python tips:匿名函数lambda

lambda用于创建匿名函数,下面两种函数定义方式等价。

1 f = lambda x: x + 2
2 
3 def f(x):
4     return x + 2 

立刻执行的匿名函数

(lambda x: print(x))(2)

输出结果

1 2

匿名函数实现闭包

 1 f = lambda x:lambda y: x & y
 2 
 3 x = 1 << 5
 4 t = f(x)
 5 print(t(0))
 6 print(t(32))
 7 
 8 # f的等价形式
 9 def f(x):
10     def s(y):
11         return x & y
12     return s

输出结果

1 0
2 32

 

posted @ 2019-06-11 18:42  luoheng  阅读(155)  评论(0编辑  收藏  举报