7

次のようなリストがあった場合

x = [2, 4, 7, 12, 3]

すべての数値を合計するには、どの関数/プロセスを使用しますか?

sum()を使う以外に方法はありますか?

4

4 に答える 4

21
x = [2, 4, 7, 12, 3]
sum_of_all_numbers= sum(x)

またはこれを試すことができます:

x = [2, 4, 7, 12, 3] 
sum_of_all_numbers= reduce(lambda q,p: p+q, x)

Reduce は、リストのすべての要素に対して関数を累積的に実行する方法です。任意の関数を実行できるため、独自の係数関数を定義すると、リストの各要素に対してその関数を繰り返し実行します。p+q を実行するために関数全体を定義することを避けるために、代わりにラムダ関数を使用できます。

于 2012-12-17T06:07:53.197 に答える
15

これ:

sum([2, 4, 7, 12, 3])

sum()リスト内のすべての要素を追加するために使用します。

同様に:

x = [2, 4, 7, 12, 3]
sum(x)
于 2012-12-17T06:00:48.917 に答える
3

あなたが試すことができます :

x = [2, 4, 7, 12, 3]    
total = sum(x)
于 2012-12-17T06:01:56.187 に答える
3

最初の方法:

my_list = [1,2,3,4,5]
list_sum = sum(list)

2 番目の方法 (効率が悪い):

my_list = [1,2,3,4,5]

list_sum = 0
for x in my_list:
   list_sum += x
于 2012-12-17T06:28:11.150 に答える