DAY.20
每天学习一点python-第二十天在python中,除了用def定义的普通函数,还有使用lambda关键字创建匿名函数,所谓匿名即这个函数没有名字的函数。
基本结构:
lambda参数1,参数2,参数3:执行代码语句
例:
A=lambdax,y:x+y#通过变量调用匿名函数
print(A(1,2))
输出结果:3
对应的普通函数代码:
defA(x,y):
returnx+y
pass
print(A(1,2))
输出结果:3
说明:①匿名函数自带return,而这个return的结果就是表达式计算后的结果。
②相对于普通函数简洁
例1:替换传统双分支的写法
funcTest=lambdax,y:xifxyelsey
print(funcTest(1,2))
输出结果:2
普通写法:
x=1
y=2
ifxy:
print(x)
else:
print(y)
输出:2
例2:直接调用
funcTest=(lambdax,y:xifxyelsey)(1,2)
print(funcTest)
输出:2
缺点:lambde只能是单个表达式,不是一个代码块,lambde的设计就是为了满足简单函数的场景,仅仅能封装有限的逻辑。