filter函数
filter(self, /, *args, **kwargs) # 过滤
filter() 函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。
该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回 True 或 False,最后将返回 True 的元素放到新列表中。
例如:实例
def is_odd(n):
return n % 2 == 1
newlist = filter(is_odd, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
print(newlist)
结果:
[1, 3, 5, 7, 9]
lambda函数
Lambda 函数又称匿名函数,即用句子实现函数的功能
看个简单 lambda 函数实例:
add = lambda x, y : x+y
add(1,2)
结果:
3
filter和lambda使用
实例:
img_names = list(filter(lambda x: x.endswith('.jpg'), img_names))
即过滤出img_names中以.jpg后缀的元素