📜  Python|对列表求和并返回总和列表的方法

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

Python|对列表求和并返回总和列表的方法

该列表是一个重要的容器,几乎用于日常编程和Web开发的每个代码中,使用得越多,掌握它的要求就越多,因此需要了解它的操作。给定一个列表列表,程序假设返回总和作为最终列表。

让我们看一些对列表和返回列表求和的方法。

方法#1:使用朴素的方法

# Python code to demonstrate
# sum of list of list
# using naive method
  
# Declaring initial list of list
L = [[1, 2, 3],
     [4, 5, 6],
     [7, 8, 9]]
          
# Printing list of list
print("Initial List - ", str(L))
  
# Using naive method
res = list()
for j in range(0, len(L[0])):
    tmp = 0
    for i in range(0, len(L)):
        tmp = tmp + L[i][j]
    res.append(tmp)
      
# printing result
print("final list - ", str(res))
输出:
Initial List -  [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
final list -  [12, 15, 18]


方法 #2:使用 numpy 数组
numpy 是一个通用的数组处理包。它提供了一个高性能的多维数组对象,以及用于处理这些数组的工具。

# Python code to demonstrate
# sum of list of list
# using numpy array functions
import numpy as np
  
# Declaring initial list of list
List = np.array([[1, 2, 3],
                 [4, 5, 6],
                 [7, 8, 9]])
          
# Printing list of list
print("Initial List - ", str(List))
  
# Using numpy sum
res = np.sum(List, 0)
      
# printing result
print("final list - ", str(res))
输出:
Initial List -  [[1 2 3]
                 [4 5 6]
                 [7 8 9]]
final list -  [12 15 18]


方法 #3:使用zip()和列表推导

# Python code to demonstrate
# sum of list of list using 
# zip and list comprehension
  
# Declaring initial list of list
List = [[1, 2, 3],
        [4, 5, 6],
        [7, 8, 9]]
          
# Printing list of list
print("Initial List - ", str(List))
  
# Using list comprehension
res = [sum(i) for i in zip(*List)]
      
# printing result
print("final list - ", str(res))
输出:
Initial List -  [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
final list -  [12, 15, 18]