リスト内の全ての要素を掛算する(総乗を求める)ケースに遭遇しました。
どうやって実装するか考えたのは、まず for ループで総当たりする方法。
l = [1, 2, 3, 4, 5] # 1 x 2 x 3 x 4 x 5 なので総乗は 120となる prod_total = 1 for _ in range(len(l)): prod_total *= l[_] print(prod_total) # 出力結果 120
これでも問題ありませんが、もっと楽に書く方法もあります。
math モジュールの prod を使う方法です。
import math l = [1, 2, 3, 4, 5] # 1 x 2 x 3 x 4 x 5 なので総乗は 120となる print(math.prod(l)) # 出力結果 120
出る結果は同じなのですが、math モジュールを使う事で、とてもシンプルで見やすい書き方になりました。