在Python中,filter()
是一个内置函数,它用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。filter()
函数接受两个参数,第一个参数是一个函数,第二个参数是一个序列。序列的每个元素作为参数传递给函数进行判定,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
一、filter()
函数的语法如下:
filter(function, iterable)
function 函数:
用于测试每个元素是否满足条件。iterable
可迭代对象:,例如列表、元组或字符串。
filter()
函数返回的是一个迭代器,因此如果你想要得到一个列表,可以使用 list()
函数将其转换。
这里有一个简单的例子,演示如何使用 filter()
函数来过滤出列表中的偶数:
def is_even(number): | |
return number % 2 == 0 | |
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] | |
even_numbers = list(filter(is_even, numbers)) | |
print(even_numbers) # 输出: [2, 4, 6, 8, 10] |
在上面的例子中,is_even
函数检查一个数是否是偶数。filter()
函数使用这个函数来过滤 numbers
列表,只保留偶数。最后,我们使用 list()
将结果转换为列表。