lambda关键字可以用来创建一些匿名函数(不用函数名,不需要像用def创建函数那样,简单方便。)。
lambda a, b: 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')]
(key参数:指定在进行比较之前在每个列表元素上调用的函数。)