filter() 函数用于过滤序列,返回符合条件的元素。
它的基本语法如下:
filter(function, iterable)
其中,function 是一个返回 True 或 False 的函数,iterable 是一个可迭代的序列,如列表、元组等。
例如,我们可以使用 filter() 函数来过滤一个列表中的偶数:
def is_even(num):
return num % 2 == 0
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
result = list(filter(is_even, my_list))
print(result)
这段代码会输出 [2, 4, 6, 8, 10],即过滤出了列表中的偶数。
另外,我们也可以使用 lambda 函数来简化代码:
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
result = list(filter(lambda x: x % 2 == 0, my_list))
print(result)
使用 lambda 函数定义了一个匿名函数,来实现和之前相同的功能。