Python – Lista de diccionarios todos los valores Suma

Dada una lista de diccionarios, extraiga la suma de todos los valores.

Entrada : test_list = [{“Manzana”: 2, “Mango”: 2, “Uvas”: 2}, {“Manzana”: 2, “Mango”: 2, “Uvas”: 2}]
Salida : 12
Explicación : 2 + 2 +…(6 veces) = 12, suma de todos los valores.

Entrada : test_list = [{“Manzana”: 3, “Mango”: 2, “Uvas”: 2}, {“Manzana”: 2, “Mango”: 3, “Uvas”: 3}]
Salida : 15
Explicación : La suma de todos los valores da como resultado 15.

Método #1: Usar bucle

Esta es la forma bruta en la que se puede realizar esta tarea. En esto, iteramos por todos los diccionarios de la lista y luego realizamos la suma de todas las claves de cada diccionario.

Python3

# Python3 code to demonstrate working of 
# List of dictionaries all values Summation
# Using loop
  
# initializing lists
test_list = [{"Gfg" : 6, "is" : 9, "best" : 10}, 
             {"Gfg" : 8, "is" : 11, "best" : 19},
             {"Gfg" : 2, "is" : 16, "best" : 10},
             {"Gfg" : 12, "is" : 1, "best" : 8},
             {"Gfg" : 22, "is" : 6, "best" : 8}]
  
# printing original list
print("The original list : " + str(test_list))
  
res = 0
# loop for dictionaries
for sub in test_list:
    for key in sub:
          
        # summation of each key 
        res += sub[key]
      
# printing result 
print("The computed sum : " + str(res))
Producción

The original list : [{'Gfg': 6, 'is': 9, 'best': 10}, {'Gfg': 8, 'is': 11, 'best': 19}, {'Gfg': 2, 'is': 16, 'best': 10}, {'Gfg': 12, 'is': 1, 'best': 8}, {'Gfg': 22, 'is': 6, 'best': 8}]
The computed sum : 148

Método #2: Usando sum() + valores() + comprensión de lista

La combinación de las funciones anteriores se puede utilizar como alternativa de una sola línea para resolver este problema. En esto, la suma se realiza usando sum(), y los valores() se usan para extraer valores de todos los diccionarios en la lista.

Python3

# Python3 code to demonstrate working of 
# List of dictionaries all values Summation
# Using sum() + values() + list comprehension
  
# initializing lists
test_list = [{"Gfg" : 6, "is" : 9, "best" : 10}, 
             {"Gfg" : 8, "is" : 11, "best" : 19},
             {"Gfg" : 2, "is" : 16, "best" : 10},
             {"Gfg" : 12, "is" : 1, "best" : 8},
             {"Gfg" : 22, "is" : 6, "best" : 8}]
  
# printing original list
print("The original list : " + str(test_list))
  
res = sum([sum(list(sub.values())) for sub in test_list])
      
# printing result 
print("The computed sum : " + str(res))
Producción

The original list : [{'Gfg': 6, 'is': 9, 'best': 10}, {'Gfg': 8, 'is': 11, 'best': 19}, {'Gfg': 2, 'is': 16, 'best': 10}, {'Gfg': 12, 'is': 1, 'best': 8}, {'Gfg': 22, 'is': 6, 'best': 8}]
The computed sum : 148

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 *