私は関数のリストlistFunc = [g1、g2、g3]を持っています。このリストは、以下のコードで生成される:ここで引数のリスト(Python)の関数リストをマップします
def g(y):
def f(x):
return x+y;
return f;
listFunc=list(map(g, [1, 2, 3]));
、Iは、引数のリストを持っているListArg = [4、5、6]。
map
を使用して[g1(4), g1(5), g1(6), g2(4), g2(5), g2(6), g3(4), g3(5), g3(6)]
の結果リストを取得するにはどうすればよいですか?
map(lambda x:x(y), listFunc, ListArg)
しかし、それだけ[g1(4), g2(5), g3(6)]
の結果を与えます。
おかげで、あなたはmap()
を使用したい場合は
、何が欲しいのは「デカルト積」と呼ばれています。いくつかの(非Pythonの)議論については、http://phrogz.net/lazy-cartesian-product – Phrogz