lambda用于创建匿名函数,下面两种函数定义方式等价。
f = lambda x: x + 2 def f(x):
return x + 2
立刻执行的匿名函数
(lambda x: print(x))(2)
输出结果
2
匿名函数实现闭包
f = lambda x:lambda y: x & y x = 1 << 5
t = f(x)
print(t(0))
print(t(32)) # f的等价形式
def f(x):
def s(y):
return x & y
return s
输出结果
0
32