Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでリスト内の要素の合計を求める3つの方法

この記事では、Pythonでリスト(イテラブル)内の全要素の合計値を計算する方法について解説します。

問題の概要

与えられたリストの各要素を足し合わせ、その合計値を求めることが目的です。
本記事では、以下の3つのアプローチを順番に紹介します。

  1. forループを使用する方法
  2. whileループを使用する方法
  3. 再帰関数を使用する方法

方法1:forループを使用する

range()関数でインデックスを生成しながらリストを反復処理し、各要素を順番に加算していきます。

コード例

# 合計を保持する変数
total = 0
# リストを作成
list1 = [11, 22, 33, 44, 55, 66]
# リストを反復処理
for ele in range(0, len(list1)):
    total = total + list1[ele]
# 合計値を出力
print("リスト内の全要素の合計: ", total)

実行結果

リスト内の全要素の合計: 231

方法2:whileループを使用する

条件式でインデックスを管理しながら反復処理を行い、同様に合計を求めます。

コード例

# リスト内の要素の合計を求めるPythonプログラム
total = 0
ele = 0
# リストを作成
list1 = [11, 22, 33, 44, 55, 66]
# ループで反復処理
while(ele < len(list1)):
    total = total + list1[ele]
    ele += 1
# 合計値を出力
print("リスト内の全要素の合計: ", total)

実行結果

リスト内の全要素の合計: 231

方法3:再帰関数を使用する

自分自身を呼び出す再帰的な関数を定義し、リストの末尾から順に要素を加算していきます。

コード例

# リストを作成
list1 = [11, 22, 33, 44, 55, 66]
# 再帰による合計計算関数
def sumOfList(list, size):
    if (size == 0):
        return 0
    else:
        return list[size - 1] + sumOfList(list, size - 1)
# メイン処理
total = sumOfList(list1, len(list1))
print("リスト内の全要素の合計: ", total)

実行結果

リスト内の全要素の合計: 231

補足:組み込み関数sum()を使うのが最も簡単

実際の開発では、Pythonの組み込み関数sum()を使えば、わずか1行で合計を求められます。可読性とパフォーマンスの両面で推奨される方法です。

コード例

list1 = [11, 22, 33, 44, 55, 66]
total = sum(list1)
print("リスト内の全要素の合計: ", total)

実行結果

リスト内の全要素の合計: 231

まとめ

本記事では、forループ、whileループ、再帰関数という3つの方法でリスト内の要素の合計を求める方法を学びました。
また、実務では組み込み関数sum()を使うのが最もシンプルで効率的です。学習目的や状況に応じて適切な方法を選択しましょう。


  1. Pythonでリストの累積和(累積合計)を求める方法

    この記事では、リストの累積和(累積合計)を求める問題の解決策について詳しく解説します。問題文あるリストが与えられたとき、各要素までの累積和を格納した新しいリストを作成する必要があります。例えば、[10, 20, 30, 40, 50] というリストが与えられた場合、出力は [10, 30, 60, 100, 150] となります。これは、各位置でそれ以前の要素をすべて足し合わせた値です。実装例それでは、実際の実装を見ていきましょう。# 累積和を求める関数 def Cumulative(l): new = [] cumsum = 0 for element in l:

  2. リスト内の要素の合計を求めるPythonプログラム

    この記事では、Pythonを使ってリスト内のすべての要素の合計を求める方法について、具体的なコード例とともに解説します。問題の定義リストが入力として与えられたとき、そのリストに含まれるすべての要素の合計値を計算する必要があります。例えば、[1, 2, 3, 4, 5]というリストが与えられた場合、出力は 15(1+2+3+4+5)となります。この問題を解くためのアプローチは主に2つあります。1つは組み込み関数を使用する方法、もう1つはブルートフォース(総当たり)方式でループ処理を行う方法です。方法1:組み込み関数 sum() を使うPythonには標準で用意されている組み込み関数 sum()