Python 中的 lambda 是一种匿名函数,也被称作小函数或微型函数。它允许你快速定义一个函数,而不需要遵循完整的 def 函数定义过程。 lambda 函数通常用于创建简单的函数,这些函数会被立即传递给高阶函数,如 map() , filter() , reduce() , sorted() 等。
语法
lambda 函数的基本语法如下: \text{lambda} \ [arg1, arg2, …, argn] : expression
arg1, arg2, …, argn 是函数的参数列表。
expression 是函数返回值的表达式。
特点
- 匿名性: lambda 函数没有名称,因此也被称为匿名函数。
- 简洁性: lambda 函数只包含一个表达式,该表达式的结果就是函数的返回值。
- 限制性: lambda 函数不能包含命令,例如循环或多条语句。
- 作用域: lambda 函数可以捕获其创建时所在作用域中的变量。
使用场景
lambda 函数常用于以下场景:
作为参数传递给高阶函数。
临时使用,不需要定义标识符的函数。
需要快速定义一个函数对象时。
示例
以下是一些 lambda 函数的示例:
- 计算两个数字的和:add = lambda x, y: x + y
print(add(5, 3)) # 输出 8 - 检查一个数字是否为偶数:is_even = lambda x: x % 2 == 0
print(is_even(10)) # 输出 True - 使用 lambda 函数与 map() 函数:numbers = [1, 2, 3, 4, 5]
squares = map(lambda x: x ** 2, numbers)
print(list(squares)) # 输出 [1, 4, 9, 16, 25]