Python 中的 lambda 表达式是一种用于创建小型匿名函数的方式。这些函数是即时定义的,没有名字,可以用在任何需要函数的地方。lambda 函数可以有任意数量的参数,但只能有一个表达式。这个表达式的计算结果会被自动返回。lambda 表达式通常用于简单的函数,特别是在你需要传递一个小函数作为参数时非常有用。
lambda 表达式的基本语法如下:
lambda arguments: expression
arguments
是传递给 lambda 函数的参数,可以有多个,用逗号分隔。expression
是一个关于参数的表达式,其结果作为函数的返回值。add = lambda x, y: x + y
print(add(5, 3)) # 输出: 8
假设你有一个包含元组的列表,你想根据元组的第二个元素进行排序:
list_of_tuples = [(1, 'z'), (2, 'a'), (3, 'x')]
sorted_list = sorted(list_of_tuples, key=lambda x: x[1])
print(sorted_list) # 输出: [(2, 'a'), (1, 'z'), (3, 'x')]
使用 filter()
函数过滤列表中的元素:
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = list(filter(lambda x: x % 2 == 0, numbers))
print(even_numbers) # 输出: [2, 4, 6]
lambda 表达式提供了一种快捷方式来创建小型匿名函数,这在编写快速脚本或在需要简单函数对象的地方特别方便。