lambda函数主体是一个表达式,是python中的匿名函数
eg_v1 (定义一个lambda表达式,求三个数的和)
func = lambda x,y,z:x + y + z
print (func(12,44,33))
# 89
# 使用函数
def add(x,y,z):
sum = x + y + z
print (sum)
return
add(12,44,33)
# 89
上面的例子中,可知lambda函数只是创建简单的函数对象,是一个函数的单行版本,但是这种语句由于性能的原因,调用的时候绕过函数的栈分配
eg_v2 (用lambda表达式求n的阶乘)
n = 10
factorial = reduce(lambda x,y : x * y , range(1,n+1))
print (factorial)
# 3628800
# eg_v3 (lambda表达式也可以用在def函数中)
def function(x):
return lambda y : x + y
a = function(10)
print (a(20))
# 30