とらえどころのない積関数 - Python の代替手段
Python の sum() 関数は反復可能な数値の合計を便利に提供しますが、乗算の類似関数が著しく欠如していることです。当然のことながら、開発者は、sum() に似た、値を乗算する以外は同様の操作を実行する関数を求めることがよくあります。
しかし、その直感的な魅力にもかかわらず、product() などの組み込み関数は、 Pythonの標準ライブラリには存在しません。歴史的に、作成者の Guido van Rossum は、乗算演算子 (*) との混同の可能性を理由にこのアイデアに拒否権を発動しました。
専用の product() 関数がないにもかかわらず、乗算累積を実現する別のアプローチがあります。解決策の 1 つは、reduce() 関数をオペレータ モジュールと組み合わせて使用することです。以下に例を示します。
from functools import reduce import operator product = reduce(operator.mul, (3, 4, 5), 1) # Initialize with 1 for multiplication accumulation # Result: 60
この例では、reduce() は、operator.mul をシーケンス (3、4、5) の要素に適用し、結果を変数 product に累積します。 0 から開始することを避けるために、積を 1 で初期化していることに注意してください。0 から開始すると、すべての要素が誤って 0 に乗算されてしまいます。
以上が乗算用の Sum() 関数と同等の Python はありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。