Python|元组列表中的位置总和
有时我们收到的数据是以元组的形式存在的,其中包含来自各种来源的数据,我们通常可以有一个用例,在该用例中,我们需要处理元组的每个索引的总和以进行累积。让我们讨论可以执行此操作的某些方式。
方法#1:使用列表推导
这是执行此特定任务的最简单的方法,在此方法中,我们计算元组所有可能索引的每个索引的总和。
# Python3 code to demonstrate
# position summation in list of tuples
# using list comprehension
# initializing list
test_list = [(1, 6), (3, 4), (5, 8)]
# printing original list
print ("The original list is : " + str(test_list))
# position Summation in List of Tuples
# using list comprehension
res = sum(i[0] for i in test_list), sum(i[1] for i in test_list)
# printing summation
print ("The position summation of tuples : " + str(res))
输出 :
The original list is : [(1, 6), (3, 4), (5, 8)]
The position summation of tuples : (9, 18)
方法 #2:使用zip() + sum()
这是执行此特定任务的最优雅和 Pythonic 的方式。在此,我们使用zip()
结合元素的所有索引和使用 sum函数的求和性能。
# Python3 code to demonstrate
# position summation in list of tuples
# using zip() + sum()
# initializing list
test_list = [(1, 6), (3, 4), (5, 8)]
# printing original list
print ("The original list is : " + str(test_list))
# position Summation in List of Tuples
# using zip() + sum()
res = [sum(i) for i in zip(*test_list)]
# printing summation
print ("The position summation of tuples : " + str(res))
输出 :
The original list is : [(1, 6), (3, 4), (5, 8)]
The position summation of tuples : [9, 18]