lambda 函数是一个可以接收任意多个参数(包括可选参数)并且返回单个表达式值的函数。 (注意:lambda 函数不能包含命令,它们所包含的表达式不能超过一个)
lamda函数的好处
(1)lambda函数比较轻便,即用即仍,很适合需要完成一项功能,但是此功能只在此一处使用,连名字都很随意的情况下;
(2)匿名函数,一般用来给filter,map这样的函数式编程服务;
(3)作为回调函数,传递给某些应用,比如消息处理。
例1:传入多个参数的lambda函数
def sum(x,y):
return x+y
用lambda来实现
p = lambda x,y:x+y
print(p(4,6))
例2:传入一个参数的lambda函数
a=lambda x:x*x
print(a(3))
# 注意:这里直接a(3)可以执行,但没有输出的,前面的print不能少
例3:多个参数的lambda形式:
a = lambda x,y,z:(x+8)*y-z
print(a(5,6,8))
匿名函数lambda:是指一类无需定义标识符(函数名)的函数或子程序。
NOTE
1,lambda 函数不能包含命令,
2,包含的表达式不能超过一个。
说明:如果一定非要使用lambda函数,那么在任何能够使用它们的地方,都可以定义成一个单独的普通函数来进行替换。将它们用在需要封装特殊的、非重用代码上,避免代码充斥着大量的单行函数。
lambda匿名函数的格式:冒号前是参数,可以有多个,用逗号隔开,冒号右边的为表达式。其实lambda返回值是一个函数的地址,也就是函数对象。