Pythonのmap関数とreduce関数の使い方入門(コード付き)

不言
リリース: 2018-09-28 15:02:40
転載
3591 人が閲覧しました

この記事では、Python の Map 関数と Reduce 関数の使い方を紹介します (コード付き)。一定の参考値があります。困っている友人は参考にしてください。お役に立てれば幸いです。

map() 関数

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() 関数

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 サイトの他の関連記事を参照してください。

関連ラベル:
ソース:cnblogs.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート