Bạn có thể tạo danh sách lambdas trong vòng lặp python bằng cú pháp sau -
Cú pháp
def square(x): return lambda : x*x listOfLambdas = [square(i) for i in [1,2,3,4,5]] for f in listOfLambdas: print f()
Đầu ra
Điều này sẽ cung cấp đầu ra -
1 4 9 16 25
Bạn cũng có thể đạt được điều này bằng cách sử dụng một cấu trúc lập trình hàm được gọi là currying.
ví dụ
listOfLambdas = [lambda i=i: i*i for i in range(1, 6)] for f in listOfLambdas: print f()
Đầu ra
Điều này sẽ cung cấp đầu ra -
1 4 9 16 25