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]