a = [] a.append(lambda x:x**0)
a.append(lambda x:x**1)
a[0](2), a[1](2), a[2](2)... spits out 1, 2, 4, ...
b=[]
for i in range(4)
b.append(lambda x:x**i)
b[0](2), b[1](2), b[2](2)... spits out 8, 8, 8, ...
In der for-Schleife wird i als Variable an lambda übergeben. Wenn ich sie aufrufe, wird der letzte Wert von i verwendet, anstatt den Code wie bei a[] auszuführen. (d.h. b[0] sollte x^1 verwenden, b[1] sollte x^2 verwenden, ...)
Wie kann ich lambda anweisen, den Wert von i anstelle der Variablen i selbst zu übernehmen?