Python汇总列表列表的第一个元素

时间:2017-11-04 19:25:47

标签: python python-2.7

有没有办法轻松加上列表的第一个元素 我需要做的就是这样:

Lista1 = [[5,7,6,4,3], [8,7,6,14,5],[5,7,8,6,9]]

结果

18  21  20  24  17

3 个答案:

答案 0 :(得分:6)

当然有一种方法:

map(sum, zip(*Lista1))

此处,zip(*Lista1)转置Lista1map(sum, ...)sum函数应用于转置列表的每个列表。

答案 1 :(得分:3)

使用list comprehension的一个班轮:

>>> [ sum(row[i] for row in l) for i in range(len(l[0])) ]

#driver values:

IN : l = [[5,7,6,4,3], [8,7,6,14,5],[5,7,8,6,9]]
OUT : [18, 21, 20, 24, 17]

注意:我建议您使用zip完成答案。更多 pythonic 更好的运行时间

答案 2 :(得分:0)

NumPy是实现这一目标的好方法。您可以使用np.sum并指定要汇总的轴。例如:

import numpy as np
a = np.array([[5,7,6,4,3],[8,7,6,14,5],[5,7,8,6,9]], dtype=int)
np.sum(a, axis=0)
array([18, 21, 20, 24, 17])