Python | Grouped summation of tuple list

• Last Updated : 25 Apr, 2019

Many times, we are given a list of tuples and we need to group its keys and perform certain operation while grouping. The most common operation being addition. Let’s discuss certain ways in which this task can be performed. Apart from addition other operations can also be performed by doing small changes.

Method : Using Counter() + "+" operator

This task can be performed using the Counter function as it internally groups and addition operator can be used to specify the functionality on the grouped result.

 # Python3 code to demonstrate# group summation of tuple list # using Counter() + "+" operatorfrom collections import Counter  # initializing list of tuplestest_list1 = [('key1', 4), ('key3', 6), ('key2', 8)]test_list2 = [('key2', 1), ('key1', 4), ('key3', 2)]  # printing original listsprint("The original list 1 : " + str(test_list1))print("The original list 2 : " + str(test_list2))  # using Counter() + "+" operator# group summation of tuple list cumul_1 = Counter(dict(test_list1))cumul_2 = Counter(dict(test_list2))cumul_3 = cumul_1 + cumul_2   res = list(cumul_3.items())  # print resultprint("The grouped summation tuple list is : " + str(res))
Output :
The original list 1 : [('key1', 4), ('key3', 6), ('key2', 8)]
The original list 2 : [('key2', 1), ('key1', 4), ('key3', 2)]
The grouped summation tuple list is : [('key2', 9), ('key1', 8), ('key3', 8)]

My Personal Notes arrow_drop_up