教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

python3中的filter()函数

更新时间:2018年12月19日14时48分 来源:传智播客 浏览次数:

filter() 函数是一个对于可迭代对象的过滤器,过滤掉不符合条件的元素,返回的是一个迭代器,如果要转换为列表,可以使用 list() 来转换。
该函数接收两个参数,第一个为函数的引用或者None,第二个为可迭代对象,可迭代对象中的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到迭代器中
下面看下fiter()的用法:
第一个参数为None: 
[Python] 纯文本查看 复制代码
1
2
3
4
my_list = [1, '', 2, ' ', 3, 3]
new_list = list(filter(None, my_list))    # 注意:为None时,仅仅是过滤掉'', 而不是空的字符串' '
print(new_list)
# 结果为:[1, 2, ' ', 3, 3]

第二个参数为函数的引用:
[Python] 纯文本查看 复制代码
1
2
3
4
5
6
7
8
# 过滤出列表中的偶数
def is_even(num):
        return num % 2 == 0
new_list = list(filter(is_even, list(range(1, 11))))
print(new_list)
# 结果为:[2, 4, 6, 8, 10]



作者:传智播客人工智能+Python培训学院

首发:http://python.itcast.cn

0 分享到:
和我们在线交谈!