📜  Python - 矩阵中第 k 列的总和

📅  最后修改于: 2022-05-13 01:55:06.117000             🧑  作者: Mango

Python - 矩阵中第 k 列的总和

有时,在使用Python Matrix 时,我们可能会遇到需要找到特定列的总和的问题。这可以在日间编程和竞争性编程中具有可能的应用。让我们讨论可以执行此任务的某些方式。

方法 #1:使用sum() + zip()
可以使用上述功能的组合来解决此任务。在此,我们传入 zip() 列表,以访问所有列和 sum() 以获取列的总和。

# Python3 code to demonstrate working of
# Matrix Kth column summation
# using sum() + zip()
  
# initialize list
test_list = [[5, 6, 7],
            [9, 10, 2], 
            [10, 3, 4]]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initialize K
K = 2
  
# Matrix Kth column summation
# using sum() + zip()
res = [sum(idx) for idx in zip(*test_list)][K] 
  
# printing result
print("Sum of Kth column is : " + str(res))
输出 :
The original list is : [[5, 6, 7], [9, 10, 2], [10, 3, 4]]
Sum of Kth column is : 13

方法#2:使用循环
这是解决此问题的蛮力方法。在此,我们遍历矩阵并通过测试列号对列求和。

# Python3 code to demonstrate working of
# Matrix Kth column summation
# Using loop
  
# initialize list
test_list = [[5, 6, 7],
            [9, 10, 2], 
            [10, 3, 4]]
  
# printing original list
print("The original list is : " + str(test_list))
  
# initialize K
K = 2
  
# Matrix Kth column summation
# Using loop
res = 0
for sub in test_list:
    for idx in range(0, len(sub)):
        if idx == K:
            res = res + sub[idx]
  
# printing result
print("Sum of Kth column is : " + str(res))
输出 :
The original list is : [[5, 6, 7], [9, 10, 2], [10, 3, 4]]
Sum of Kth column is : 13