A veces, los datos que recibimos están en forma de tuplas que tienen datos de varias fuentes y, por lo general, podemos tener un caso de uso en el que necesitamos procesar la suma de cada índice de tupla para la acumulación. Analicemos ciertas formas en que esto se puede realizar.
Método #1: Usar la comprensión de listas
Este es el método más ingenuo para realizar esta tarea en particular, en este método calculamos la suma de cada índice de todos los índices posibles de la tupla.
# 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))
Producción :
The original list is : [(1, 6), (3, 4), (5, 8)] The position summation of tuples : (9, 18)
Método #2: Usarzip() + sum()
Esta es la forma más elegante y pythonica de realizar esta tarea en particular. En esto combinamos todos los índices del elemento usando zip()
y el rendimiento de la suma usando la función 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))
Producción :
The original list is : [(1, 6), (3, 4), (5, 8)] The position summation of tuples : [9, 18]
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA