Skip to main content
 首页 » 编程设计

Python 二维数组求和枚举

2025年05月04日28tintown

我正在尝试遍历一个二维数组,获取数组中每个列表的总和。例如我有:

test = [[5, 3, 6], [2, 1, 3], [1, 1, 3], [2, 6, 6], [4, 5, 3], [3, 6, 2], [5, 5, 2], [4, 4, 4], [3, 5, 3], [1, 3, 4]] 

我想获取每个较小数组的值,例如 5+3+6 和 2+1+3 并将它们放入一个新数组中。所以我的目标是:

testSum = [14, 6, 5, 14...].  

我在正确枚举二维数组时遇到问题。好像在跳来跳去。我知道我的代码不正确,但这是我目前所拥有的:

k = 10 
m = 3 
testSum = [] 
 
#create array with 10 arrays of length 3 
test = [[numpy.random.randint(1,7) for i in range(m)] for j in range(k)] 
    sum = 0 
    #go through each sub-array in test array 
    for array in test: 
    #add sums of sub-arrays 
        for i in array 
            sum += test[array][i] 
        testSum.append(sum) 

请您参考如下方法:

你可以用更pythonic的方式来做,

In [17]: print [sum(i) for i in test] 
[14, 6, 5, 14, 12, 11, 12, 12, 11, 8] 

或

In [19]: print map(sum,test) 
[14, 6, 5, 14, 12, 11, 12, 12, 11, 8]