二维数组中的和列。 TypeError:list indices必须是整数或切片,而不是元组

时间:2016-12-14 22:18:50

标签: python-3.x

尝试对每个相应列中的所有整数求和,存储每个总和 在列表中。当我运行代码时,它产生一个类型错误=列表索引必须是整数或切片,而不是元组。

array = [[3, 5, 7, 9]
        [2, 7, 3, 5],
        [1, 2, 6, 3],
        [6, 9, 5, 3]]

column_sum = []
total = 0
i = 0
for row in aList:
    total = total + row[i]
    column_sum.append(total)
    total = 0
    i = i + 1
print(column_sum)

1 个答案:

答案 0 :(得分:0)

您的错误是array中第一行之后缺少的逗号。此外,您在for循环中引用了array aList

通过这些更改,您的代码会运行,但我认为它不会为您提供您想要获得的结果。我想这就是你想要的:

array = [[3, 5, 7, 9],
        [2, 7, 3, 5],
        [1, 2, 6, 3],
        [6, 9, 5, 3]]

column_sum = [0, 0, 0, 0]
for row in array:
    for i, element in enumerate(row):
       column_sum[i] += element
print(column_sum)

请注意,这种写作方式相当低级且非Pythonic。你应该考虑唱NumPy来做这些事情。