如何在 Python 循环中创建 lambda?


在 Python 循环中可以使用以下语法创建 lambda 的列表:

语法

def square(x): return lambda : x*x
listOfLambdas = [square(i) for i in [1,2,3,4,5]]
for f in listOfLambdas: print f()

输出

这将产生以下输出:

1
4
9
16
25

还可以使用称为柯里化的函数式编程构造来实现此目的。

示例

listOfLambdas = [lambda i=i: i*i for i in range(1, 6)]
for f in listOfLambdas:
   print f()

输出

这将产生以下输出:

1
4
9
16
25

更新于: 2020-03-05

1K+ 浏览

开启你的 职业生涯

完成课程可获得认证

开始学习
广告