【Python】lambda()匿名函数、filter()过滤函数详解

一、lambda()——匿名函数

1、lambda函数是Python中一种简单的、无需定义函数名的函数。它通常用于创建小巧、一次性的函数,不需要在其他地方重复使用。

2、格式:

lambda 参数: 表达式

        这里的“参数”是函数的输入,而“表达式”是函数的输出。lambda函数只能包含一个表达式,该表达式的结果就是函数的返回值。

3、示例

add = lambda x, y: x + y
print(add(5, 3))  # 输出:8

        在这个例子中,我们定义了一个名为add的lambda函数,它接收两个参数xy,并返回它们的和。


二、filter()——过滤函数

1、filter()是Python内置的一个高阶函数,用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象。

2、格式:

filter(function, iterable)

        其中,function是一个判断函数,iterable是一个可迭代对象。

3、示例

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers)  # 输出:[2, 4, 6, 8, 10]

        在这个例子中,使用lambda函数作为filter的判断函数,过滤出列表中的偶数。


三、lambda()和filter()结合使用

        lambda函数经常与filter函数结合使用,以下是一个结合示例:

# 过滤出列表中的奇数
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
odd_numbers = list(filter(lambda x: x % 2 != 0, numbers))
print(odd_numbers)  # 输出:[1, 3, 5, 7, 9]

你可能感兴趣的:(python,开发语言)