用法解释
Python中的lambda表达式主要用在如下情境中:想构造一个函数,但是这个函数并不在其他地方调用,没必要给这个函数命名,所谓想使用一个匿名函数。
lambda表达式的书写形式如下,输入arguments,输出expression的计算结果。
lambda arguments : expression
lambda表达式算是一个语法糖,它没有引入新功能,只是类似下面的表达式的简化写法。
def fuction(arguments):
return expression
执行下面两段代码有同样的效果,输入x,输出x + 1。
lambda x : x + 1
def f(x):
return x + 1
lambda表达式整体也可以赋值给某个变量,lambda表达式整体返回一个函数对象。
>>> foo = lambda x : x + 1
>>> foo(1)
2
代码实例
#Python 3.4.3
>>> words = ['foo', 'bar', 'baz']
>>> list(map(lambda x: x.upper(), words))
['FOO', 'BAR', 'BAZ']
>>> list(filter(lambda x: 'a' in x, words))
['bar', 'baz']