Python filter 用法详解及示例
filter()函数是Python中的内置函数,用于筛选出符合条件的元素。它接受两个参数:一个是函数,另一个是可迭代的对象,如列表或元组。filter()函数会依次将可迭代对象中的元素传入函数中进行判断,如果返回值为True,则保留该元素;反之则舍弃。
filter()函数的基本语法如下:
filter(function, iterable)
接下来,我将为您举3个示例来说明filter()函数的用法。
示例1:筛选出偶数
首先定义一个函数用于判断一个数字是否为偶数:
def is_even(n):
return n % 2 == 0
然后,我们可以使用filter()函数筛选出列表中的偶数:
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9]
even_numbers = list(filter(is_even, numbers))
print(even_numbers) # 输出 [2, 4, 6, 8]
示例2:筛选出长度大于等于5的字符串
定义一个函数用于判断一个字符串的长度是否大于等于5:
def is_long_enough(s):
return len(s) >= 5
然后,我们可以使用filter()函数筛选出列表中长度大于等于5的字符串:
strings = ["apple", "banana", "car", "donkey", "elephant"]
long_strings = list(filter(is_long_enough, strings))
print(long_strings) # 输出 ["banana", "donkey", "elephant"]
示例3:筛选出大于10的数值
定义一个函数用于判断一个数字是否大于10:
def is_greater_than_10(n):
return n > 10
然后,我们可以使用filter()函数筛选出列表中大于10的数值:
numbers = [5, 10, 15, 20, 25]
greater_numbers = list(filter(is_greater_than_10, numbers))
print(greater_numbers) # 输出 [15, 20, 25]
通过以上三个示例,您可以看到filter()函数的用法:在给定的条件下,它可以筛选出符合条件的元素,从而实现数据的过滤操作。希望对您有所帮助!如果还有其他问题,请随时提问。