0

重複の可能性:
Python でのリストのマージ/追加

nested_list= [[1, 3, 5], [3, 4, 5]]
sum_of_items_in_nested_list = [4, 7, 10]

対応する各インデックスでアイテムを取得し、同じインデックスで他のネストされたリストに追加するネストされた for ループを作成しようとしています。nested_list[0][0] + nested_list[1][0]したがって、上記はなどを追加 nested_list[0][1] + nested_list[1][1]します。モジュールをインポートせずにこれを行いたいと思います。これはおそらくとても簡単ですが、私はそれで悪魔のような時間を過ごしています.

4

3 に答える 3

4

使用zip():

In [44]: nested_list= [[1, 3, 5], [3, 4, 5]]

In [45]: [sum(x) for x in zip(*nested_list)]
Out[45]: [4, 7, 10]

ネストされたループを使用する別の方法:

In [6]: nested_list= [[1, 3, 5], [3, 4, 5]]

In [7]: minn=min(map(len,nested_list))   #fetch the length of shorted list

In [8]: [sum(x[i] for x in nested_list) for i in range(minn)]
Out[8]: [4, 7, 10]
于 2012-10-28T16:41:06.213 に答える
0

この解決策についても考えることができます:

map(int.__add__,*nested_list)

より良いスタイル:

from operator import add
map(add,*nested_list)
于 2012-10-28T18:39:02.787 に答える
0

これがあなたのケースの答えですlen()。リストの長さを変更するために使用できます。

nested_list= [[1, 3, 5], [3, 4, 5]]

sum_of_items_in_nested_list=[]
for j in range(0,3,1):
    result=0
    for i in range(0,2,1):
         result=result+nested_list[i][j]
         sum_of_items_in_nested_list = sum_of_items_in_nested_list + [result]
于 2012-10-28T20:20:52.077 に答える