我理解他们做了什么以及如何使用它们,但我仍然对它们为什么包含在Python中感到困惑.在正常的功能定义风格上使用它们有什么好处?
我能想到的唯一真正的区别是你可以在表达式中创建它们.例如,如果myList是一个int列表,并且您想要为每个元素添加一个,则可以使用
list(map(lambda x: x+1, myList))
Run Code Online (Sandbox Code Playgroud)
而如果你想用函数定义来做,你必须在别处定义它,然后传递该变量.
但是,我非常怀疑这种相对较小的便利性是否可以证明它们被包含在语言中,所以我猜这里有一些我不知道的东西.或者,也许,我低估了能够在这样的行内创建函数的有用性.
所以,这基本上是我的问题 - 什么是lambdas应该用于什么?为什么包括在内?