如何在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

您也可以使用称为currying的功能性编程构造来实现此目的。 

示例

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

输出结果

这将给出输出-

1
4
9
16
25