匿名函数
python 使用 lambda 来创建匿名函数。
- lambda只是一个表达式,函数体比def简单很多。
- lambda的主体是一个表达式,而不是一个代码块。仅仅能在
- lambda表达式中封装有限的逻辑进去。
- lambda函数拥有自己的命名空间,且不能访问自有参数列表之外或全局命名空间里的参数。
- 虽然lambda函数看起来只能写一行,却不等同于C或C++的内联函数,后者的目的是调用小函数时不占用栈内存从而增加运行效率。
语法
lambda函数的语法只包含一个语句,如下:
lambda [arg1 [,arg2,…argn]]:expression
比方说,我要写一个函数用于两个数相乘
- 如果用def方式来写:
>>> def f(x,y):
... return x*y
>>> f(2,3)
6
- 用匿名函数来写:
>>> func = lambda x,y:x*y
可以看到,上面我们把匿名函数对象赋给一个变量,只要直接调用该对象就可以使用匿名函数:
>>> func(2,3)
6
你也可以给匿名函数传入一个参数:
>>> func_2 = lambda x:x^2
>>> func_2(3)
9
以上对匿名函数作了解释,也举了一些例子用以说明。那么,匿名函数的优点是什么呢?
- 不用取名称,因为给函数取名是比较头疼的一件事,特别是函数比较多的时候
- 可以直接在使用的地方定义,如果需要修改,直接找到修改即可,方便以后代码的维护工作
- 语法结构简单,不用使用def 函数名(参数名):这种方式定义,直接使用lambda 参数:返回值 定义即可
作者:Eamon
时间:2020/12/7

这篇博客介绍了Python中的匿名函数lambda,包括其语法、使用场景和优点。通过示例展示了如何用lambda创建简单的函数,指出其与def定义的函数的区别,并强调了匿名函数在代码简洁性和维护性上的优势。
3635

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



