この記事では、Python の Map 関数と Reduce 関数の使い方を紹介します (コード付き)。一定の参考値があります。困っている友人は参考にしてください。お役に立てれば幸いです。
Python の map() 関数は 2 つのパラメータを受け取ります。1 つは呼び出し元の関数オブジェクトです (オブジェクトは Python のどこにでもあり、関数はオブジェクトとして呼び出すこともできます)インスタンス化される前) )、もう 1 つは関数を呼び出すために必要なパラメーターであり、戻り値は反復的に計算された結果のリストです。
def func(x): return x*x r=map(func,[1,2,3,4,5,6,7,8,9]) l=list(r) print(l)
表示結果:
[1, 4, 9, 16, 25, 36, 49, 64, 81]
reduce 関数には 2 つのパラメータも必要です。1 つは次のパラメータです。 call Function オブジェクト、関数を呼び出すために必要な別の数のパラメータ、およびその戻り値は計算結果を次の要素で累積します。
from functools import reduce def add(x,y): print('x is:',x,'y is:',y) return x+y ret=reduce(add,[1,3,5,7,9]) print(ret)
表示結果:
x is: 1 y is: 3 x is: 4 y is: 5 x is: 9 y is: 7 x is: 16 y is: 9 25
Python の組み込み関数について質問するかもしれません。 sum() を使用すると目的の結果が得られますが、なぜreduceする必要があるのでしょうか?次のケースでは、[1,3,5,7,9] を 13579
from functools import reduce def add(x,y): print('x is:',x,'y is:',y) return x*10+y ret=reduce(add,[1,3,5,7,9]) print(ret)
に返したいので、結果を表示します:
えー
以上がPythonのmap関数とreduce関数の使い方入門(コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。