filter() 函数的学习
阅读原文时间:2023年08月11日阅读:1

1.    filter() 函数

用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。该接收两个参数,

第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判断,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。

可迭代对象:可以使用for循环遍历的对象.

d_user={'xiaogan':'123','xiaoming':'234'}

def f(a):
print(a)

返回一个迭代器对象

list(filter(f,d_user))

2.  过滤出列表中的所有奇数

# 过滤出列表中的所有奇数

def is_odd(n):

return n%2==1

list1=[1,2,3,4,5,6,7,8]

把list1列表中的元素依次传入到is_odd函数中,然后筛选出满足奇数的。

templist=filter(is_odd,list1)

newlist=list(templist)

print(newlist)

运行截图:

3.  过滤出1~100中平方根是整数的数import math

_# 输出平方根

print(math.sqrt(9))
print(math.sqrt(25))
print(math.sqrt(36))

def is_sqr(x):

r=int(math.sqrt(x))

return r\*r==x

print(list(filter(is_sqr,range(1,101))))_

或者
def is_sqrt(x):

% 取余

if math.sqrt(x) % 1==0:

return math.sqrt

代码运行截图:

相关学习链接:

https://blog.csdn.net/qq_41545480/article/details/104648542

让学习成为一种习惯,闪耀人生!