Python | Columnas acumulativas suma de registros

A veces, al trabajar con registros, podemos tener un problema en el que necesitamos sumar todas las columnas de un contenedor de listas que son tuplas. Este tipo de aplicación es común en el dominio del desarrollo web. Analicemos ciertas formas en que se puede realizar esta tarea. 
Método #1: Usar sum() + comprensión de lista + zip() 
Esta tarea se puede realizar usando una combinación de las funciones anteriores. En esto, acumulamos los elementos de índice similares, es decir, las columnas usando zip(), y luego iteramos a través de ellas usando la comprensión de listas y realizamos la suma usando sum().
 

Python3

# Python3 code to demonstrate working of
# Cumulative Columns summation of Records
# using list comprehension + sum() + zip()
  
# initialize list
test_list = [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
  
# printing original list
print("The original list : " + str(test_list))
  
# Cumulative Columns summation of Records
# using list comprehension + sum() + zip()
res =  [sum(ele) for ele in zip(*test_list)]
  
# printing result
print("The Cumulative column sum is : " + str(res))
Producción

The original list : [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
The Cumulative column sum is : [8, 15, 17]

 
Método #2: Usando zip() + map() + sum() 
Este método es similar al método anterior. En esto, la tarea realizada por la comprensión de listas la realiza map(), que extiende la suma de columnas a elementos comprimidos.
 

Python3

# Python3 code to demonstrate working of
# Cumulative Columns summation of Records
# using zip() + map() + sum()
  
# initialize list
test_list = [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
  
# printing original list
print("The original list : " + str(test_list))
  
# Cumulative Columns summation of Records
# using zip() + map() + sum()
res = list(map(sum, zip(*test_list)))
  
# printing result
print("The Cumulative column sum is : " + str(res))
Producción

The original list : [(1, 2, 3), (6, 7, 6), (1, 6, 8)]
The Cumulative column sum is : [8, 15, 17]

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *