Lambda 表达式
lambda表达式是一种简洁格式的函数。该表达式不是正常的函数结构,而是属于表达式的类型。而且它可以调用其它函数。
1、基本格式:
lambda 参数,参数...:函数功能代码
例:
result = lambda x,y:x+y
print(result(3,4))
结果将输出3+4之和:7
2、带分支格式:
lambda 参数:值1 if 条件表达式 else 值2
例:
result = lambda x:`有` if x==True else `没有`
print(result(True))
如果条件表达式成立,输出值1 :“有”,如果条件表达式不成立,输出值2:“没有”,所以结果将输出:有
3、调用其它函数的格式:
lambda 参数:其它函数
例:
def he(n): #定义一个求n以内数值之和的函数
sum = 0
for i in range(n+1):
sum += i
return sum result = lambda n:he(n) #lambda 调用函数he(n)
print(result(10))
lambda 表达式的优缺点
优点:
书写简单,不需要def 关键字
不需要费脑子想函数名,看起来高大上!
缺点:
Lambda 表达式功能受限,无法使用循环和多项分支
复杂的操作,不适合lambda表达式