- 4.7.5. Lambda 表达式
4.7.5. Lambda 表达式
可以用 lambda
关键字来创建一个小的匿名函数。这个函数返回两个参数的和: lambda a, b: a+b
。Lambda函数可以在需要函数对象的任何地方使用。它们在语法上限于单个表达式。从语义上来说,它们只是正常函数定义的语法糖。与嵌套函数定义一样,lambda函数可以引用包含范围的变量:
- >>> def make_incrementor(n):
- ... return lambda x: x + n
- ...
- >>> f = make_incrementor(42)
- >>> f(0)
- 42
- >>> f(1)
- 43
上面的例子使用一个lambda表达式来返回一个函数。另一个用法是传递一个小函数作为参数:
- >>> pairs = [(1, 'one'), (2, 'two'), (3, 'three'), (4, 'four')]
- >>> pairs.sort(key=lambda pair: pair[1])
- >>> pairs
- [(4, 'four'), (1, 'one'), (3, 'three'), (2, 'two')]