Python 的 lambda 表达式是一种匿名函数,可以用来简化代码。lambda 表达式由 lambda
关键字、参数列表和表达式组成。例如:
Python
# 求两个数的和
f = lambda x, y: x + y
print(f(10, 20)) # 输出 30
在上述代码中,f
是一个 lambda 表达式,它接受两个参数 x
和 y
,并返回 x
和 y
的和。
lambda 表达式可以用在以下场合:
- 作为函数的参数:例如,我们可以使用 lambda 表达式作为
map()
函数的参数,来对列表中的每个元素进行操作。
Python
# 将列表中的每个元素乘以 2
numbers = [1, 2, 3, 4, 5]
doubled_numbers = map(lambda x: x * 2, numbers)
print(list(doubled_numbers)) # 输出 [2, 4, 6, 8, 10]
- 作为函数的返回值:例如,我们可以使用 lambda 表达式作为
filter()
函数的返回值,来创建一个新的列表。
Python
# 过滤列表中的所有偶数
numbers = [1, 2, 3, 4, 5]
even_numbers = filter(lambda x: x % 2 == 0, numbers)
print(list(even_numbers)) # 输出 [2, 4]
- 作为列表推导式中的表达式:例如,我们可以使用 lambda 表达式来创建一个新的列表。
Python
# 创建一个新的列表,每个元素都是原列表中元素的平方
numbers = [1, 2, 3, 4, 5]
squared_numbers = [x ** 2 for x in numbers]
print(squared_numbers) # 输出 [1, 4, 9, 16, 25]
lambda 表达式可以简化代码,使代码更简洁易读。