本函数用来从一个迭代对象iterable遍历所有元素,当每个元素作为参数给函数function对象运行之后,判断为True的元素保留下来,而为False的元素则跳过,即是达到过滤不需要元素的目标。参数iterable是可迭代的对象,比如列表、字典、字符串,或者带迭代器的函数对象。参数function是一个能输入元素进判断并返回值的函数,如果这个参数为空,默认使用标识函数identity为缺省函数。
当function非空时,相当于生成表达式:
item for item in iterable if function(item))
当function为空时,相当于生成表达式:
item for item in iterable if item
例子:
#filter() l = list(filter(None, [0, 1, 2, 3])) print(l) a = [1,2,3,4,5,6,7] b = list(filter(lambda x : x > 5, a)) print(b)
输出结果如下:
[1, 2, 3]
[6, 7]
蔡军生 QQ:9073204 深圳
时间: 2024-10-13 00:38:51