如何在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
极客教程