Python | Valor de la suma de la clave en el diccionario

Muchas operaciones, como la agrupación y las conversiones, son posibles utilizando los diccionarios de Python. Pero a veces, también podemos tener un problema en el que necesitamos realizar la agregación de valores de clave en la lista del diccionario. Esta tarea es común en la programación día a día. Analicemos ciertas formas en que se puede realizar esta tarea.

Método #1: Usar sum()+ comprensión de lista

Este es el enfoque de una sola línea para realizar la tarea de obtener la suma de una clave particular mientras se itera a las claves similares en la lista de diccionarios usando la comprensión de listas.

# Python3 code to demonstrate working of
# Value summation of key in dictionary
# Using sum() + list comprehension
  
# Initialize list
test_list = [{'gfg' : 1, 'is' : 2, 'best' : 3},
             {'gfg' : 7, 'is' : 3, 'best' : 5},
             {'gfg' : 9, 'is' : 8, 'best' : 6}] 
  
# printing original list
print("The original list is : " + str(test_list))
  
# Value summation of key in dictionary
# Using sum() + list comprehension
res = sum(sub['gfg'] for sub in test_list)
  
# printing result
print("The sum of particular key is : " + str(res))
Producción :

La lista original es: [{‘mejor’: 3, ‘gfg’: 1, ‘es’: 2}, {‘mejor’: 5, ‘gfg’: 7, ‘es’: 3}, {‘mejor’ : 6, ‘gfg’: 9, ‘is’: 8}]
La suma de la clave particular es: 17

Método #2: Usarsum() + itemgetter() + map()
La combinación de estas funciones también se puede usar para realizar esta tarea. En esto, la principal diferencia es que la tarea de comprensión es realizada por map()y la tarea de acceso clave es realizada por elitemgetter().

# Python3 code to demonstrate working of
# Value summation of key in dictionary
# Using sum() + itemgetter() + map()
import operator
  
# Initialize list
test_list = [{'gfg' : 1, 'is' : 2, 'best' : 3},
             {'gfg' : 7, 'is' : 3, 'best' : 5},
             {'gfg' : 9, 'is' : 8, 'best' : 6}] 
  
# printing original list
print("The original list is : " + str(test_list))
  
# Value summation of key in dictionary
# Using sum() + itemgetter() + map()
res = sum(map(operator.itemgetter('gfg'), test_list))
  
# printing result
print("The sum of particular key is : " + str(res))
Producción :

La lista original es: [{‘mejor’: 3, ‘gfg’: 1, ‘es’: 2}, {‘mejor’: 5, ‘gfg’: 7, ‘es’: 3}, {‘mejor’ : 6, ‘gfg’: 9, ‘is’: 8}]
La suma de la clave particular es: 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 *