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, ...
forループでは、iが変数としてラムダに渡されているので、私が呼び出すと、実行するコードの代わりにiの最後の値が使用されますとともに[]。ラムダ式の変数の値を使用する
変数i自体の代わりにiの値を取得するにはどうすればlambdaに伝えることができますか?
-1:Lambdas :-(。関数を定義するだけで、何が起こっているのかははっきりしています。 –
(疑似)コードを引用する前に、あなたの問題/状況を説明するための質問をするときは、私はお勧めしたい。 – physicsmichael