2013-01-10 40 views
0

可能重复:
sum each value in a list of tuples如何在python列表中列出元素的总和?

我需要帮助解决这个问题,谢谢你提前为您的colaboration。 我想obtein这样的:

result=[12,15,18] 

a= [[1,2,3],[4,5,6],[7,8,9]] 

我的代码尝试下面的作品,但我想找到一个通用的形式做到这一点的情况下,内部列表可能是变量。

lista=[[5, 7, 9], [8, 11, 13], [11, 13, 15]] 

b2 = [lista [0][i]+ lista [1][i] + lista [2][i] for i in range(len(lista))] 

print (b2) 

非常感谢。

+0

这气味像功课。 –

+0

非常感谢Ashwini Chaudhary,这个问题被重复了,这个解释很完美,非常友善。 – user1965825

+0

@ user1965825很高兴帮助。 –

回答

0

我会做这种方式:

# a is some list 
b2 = [0]*len(a[0]) 
for x in a: 
    for y in range(len(x)): 
     b2[y] += x[y] 
print(b2) 
+0

与基于zip()的解决方案相比,这是非pythonic。 –

2
a= [[1,2,3],[4,5,6],[7,8,9]] 
result = map(sum, zip(*a)) 
print result 
+0

补充了python 3中Jun HU的有用答案可以是: lista = [[1,2,3],[4,5,6],[7,8,9]] g = [] for i in map(sum,zip(* lista) ): g.append(i) print(g) 谢谢, – user1965825