在Python 中,除了def 之外,还提供了一种生成函数对象的表达式形式,即Lambda表达式,它可以创建小的匿名函数,起到一个函数速写的作用
例如:
注意:Python 的 Lambda表达式的函数体只能有一条语句
Lambda表达式也可以用在 def 函数中,用来返回一个函数
例如:官网的例子
Lambda还有一个用途是传递一个小函数作为参数
例如:官网的例子
Lambda定义了一个匿名函数,但使用它并不会带来代码执行效率的提升。Lambda通常与map、filter、reduce在遍历序列时配合使用
map
遍历序列,对序列中每个元素进行操作,最终获得新的序列
例如:
filter
对序列中的元素进行筛选,最终获得符合条件的序列
例如:
reduce
对序列内所有元素进行累计操作
例如:
注意:在Python3 中,reduce() 函数已经被从全局名字空间里移除了,它现在放置在functools 模块里,如果想要使用它,则需要通过引入functools 模块来调用reduce() 函数