python的filter()函数
filter()函数用于过滤序列,过滤掉不符合条件的元素,返回符合条件的元素组成新列表。
语法:filter(function,iterable)
function -- 判断函数。
iterable -- 可迭代对象
序列中的每个元素作为参数传递给函数进行判断,返回True或者False,最后将返回True的元素放到新列表中
eg:
def is_odd(n):
return n%2 == 1
print(list(filter(is_odd,[1,2,3,4,5,6,7,8,9,10])))# [1,3,5,7,9]
list_2 = [1, 9, 40, 0, 8, 0, 3]
print(list(filter(lambda x: x, list_num))) #[1, 2, 3, 8, 3]
注:filter函数返回一个惰性计算的filter对象或迭代器,不能通过index访问元素。可以通过list()转换为列表