使用Python依据位置来计算列表中的列表总和

2024-04-24 12:54:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个列表,看起来像这样,我想总结每个位置的值,以便产生一个只有三个值的列表

print x
[[0, 0, -1], [0, 0, -1], [0, 0, 0], [1, 0, 0], [0, 0, 1]]

例如,x[0][1]应与x[1][1]x[2][1]x[3][1]x[4][1]中的值求和。同样地,x[0][2]应该用x[1][2]x[2][2]等来求和

输出应该如下所示

^{pr2}$

Tags: 列表printpr2
3条回答

只需合并for循环:

outlist=[]
for i in range(len(L[0])):
    sum = 0
    for subL in L:
        sum += subL[i]
    outlist.append(sum)

print(outlist)

输出:

^{pr2}$

我将使用Julien's答案,因为它更具可读性,但是为了给您一个替代方案,您可以使用map和{a3}函数。在

list(map(sum, zip(*x)))

使用numpy:

np.sum(x, axis=0) 

使用本机列表:

^{pr2}$

相关问题 更多 >