匿名函数

1. lambda是一个表达式,而不是一个语句

2. lambda是只有一行的简单表达式,并不能扩展成一个多行的代码块

 

 使用场景:

1. 一个小的功能函数,只需要一行就能完成,且只会被调用一次

2. 编程中与高阶函数联合使用

实际开发中,lambda更多的是与map、filter、reduce等高阶函数搭配使用,因为这些函数中需要接收函数对象作为参数,使用lambda达到了既定义函数又传递函数的目的,比如map(lambda x: x ** 2, range(5)),这里的lambda x: x ** 2先定义函数,然后将此函数对象作为参数传递给map;如果是def则需要首先在外部定义这个函数,而不能在map函数中直接通过def来定义,map(def..., range(5)),Python不允许这样的语法。
 
 


posted @ 2020-07-07 10:30  半日闲1  阅读(140)  评论(0编辑  收藏  举报