lambda 是为了减少单行函数的定义而存在的。
如果可以使用for...in...if来完成的,坚决不用lambda。
g = lambda x:x+1g(1)
>>>2
g(2)
>>>3
当然,你也可以这样使用:
(lambda x:x+1)(1)
>>>2
可以这样认为,lambda作为一个表达式,定义了一个匿名函数,上例的代码x为入口参数,x+1为函数体,用函数来表示为: def g(x):
return x+1map函数中:
map(lambda x: x * 2 + 10, foo)例子1:
>>> f = lambda x,y,z:x+y+z
>>> f(1,2,3)
6例子2:
>>> def action(x):
return lambda y:x+y
>>> a = action(2)
>>> a(22)
24
>>> b=lambda x:lambda y:x+y
>>> a=b(3)
>>> a(2)
5
>>> (b(2))(2)
4
本文详细介绍了Python中lambda函数的应用场景及其实现方式,通过多个示例展示了如何使用lambda简化代码,包括单行函数定义、匿名函数应用以及与map等高阶函数的结合使用。
1084

被折叠的 条评论
为什么被折叠?



