lambda只是一个表达式,函数体比def简单很多。
lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
lambda表达式是起到一个函数速写的作用。允许在代码内嵌入一个函数的定义。
正常函数形式:
# 正常函数 def funa(a): a+1 return a print funa(4)
lambda表达式:
# lambda表达式 funb=lambda a:a+1 print funb(6)
lambda表达式用在def函数中:
# lambda表达式用在def函数中 def func(a): return lambda b:a+b x=func(4) print x(10)
也可以直接把def写成lambda形式:
# 也可以把def直接写成lambda形式 y=lambda a:lambda b:a+b a=y(2) print a(3)其输出的结果分别为:
4
7
14
5