Python: suma selectiva de valores clave

A veces, mientras trabajamos con los diccionarios de Python, podemos tener un problema en el que deseamos obtener la suma de los valores de ciertas claves en el diccionario. Este tipo de aplicación puede tener casos de uso en muchos dominios, como la programación día a día. Analicemos ciertas formas en que se puede realizar esta tarea.

Entrada : test_dict = {‘Gfg’: 4, ‘is’: 2, ‘best’: 7}, key_list = [‘Gfg’, ‘best’]
Salida : 11

Entrada : test_dict = {‘Gfg’: 4, ‘mejor’: 7}, key_list = [‘Gfg’]
Salida : 4

Método n.º 1: Uso del bucle
Esta es una de las formas en que se puede realizar esta tarea. En esto, iteramos para las claves de la lista de objetivos y sumamos los valores correspondientes del diccionario.

# Python3 code to demonstrate working of 
# Selective Key Values Summation
# Using loop
  
# initializing dictionary
test_dict = {'Gfg' : 4, 'is' : 2, 'best' : 7, 'for' : 9, 'geeks' : 10} 
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# initializing keys_list
key_list = ['Gfg', 'best', 'geeks']
  
# Selective Key Values Summation
# Using loop
res = 0  
for key in key_list:
    res += test_dict[key]  
          
# printing result 
print("The keys summation : " + str(res)) 
Producción :

The original dictionary is : {'Gfg': 4, 'is': 2, 'best': 7, 'for': 9, 'geeks': 10}
The keys summation : 21

Método n.° 2: usar sum()la comprensión de lista +
La combinación de las funciones anteriores se puede usar para resolver este problema. En esto, realizamos la suma usando sum() y la comprensión de la lista se usa para realizar la tarea de iteración.

# Python3 code to demonstrate working of 
# Selective Key Values Summation
# Using sum() + list comprehension
  
# initializing dictionary
test_dict = {'Gfg' : 4, 'is' : 2, 'best' : 7, 'for' : 9, 'geeks' : 10} 
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# initializing keys_list
key_list = ['Gfg', 'best', 'geeks']
  
# Selective Key Values Summation
# Using sum() + list comprehension
res = sum([test_dict[key] for key in key_list])
  
# printing result 
print("The keys summation : " + str(res)) 
Producción :

The original dictionary is : {'Gfg': 4, 'is': 2, 'best': 7, 'for': 9, 'geeks': 10}
The keys summation : 21

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 *