Python: multiplicación entre elementos de la lista de valores de claves similares

Dados dos diccionarios con listas de valores, realice elementos como la multiplicación de claves.

Entrada : test_dict1 = {“Gfg”: [4, 6], “Best”: [8, 6], “is”: [9, 3]}, test_dict2 = {“Gfg”: [8, 4],
“ Mejor”: [6, 3], “es”: [9, 8]}
Salida : {‘Gfg’: [32, 24], ‘Mejor’: [48, 18], ‘es’: [81, 24 ]}
Explicación : 4 * 8 = 32, 6 * 4 = 24 y así sucesivamente, de ahí el nuevo valor de lista.

Entrada : test_dict1 = {“Gfg”: [4, 6], “Best”: [8, 6]}, test_dict2 = {
“Gfg”: [8, 4], “Best”: [6, 3]}
Salida : {‘Gfg’: [32, 24], ‘Best’: [48, 18]}
Explicación : 4 * 8 = 32, 6 * 4 = 24 y así sucesivamente, de ahí el nuevo valor de lista.

Método: Usando la comprensión del diccionario + zip()

Esta es una de las formas en que se puede realizar esta tarea. En esto, realizamos la tarea de combinar claves usando zip() y usamos zip() nuevamente para combinar valores similares. La comprensión del diccionario se utiliza para realizar la construcción de una nueva lista.

Python3

# Python3 code to demonstrate working of 
# Multiplication across Like Keys Value list elements
# Using dictionary comprehension + zip()
  
# initializing dictionaries
test_dict1 = {"Gfg" : [4, 6, 7], "Best" : [8, 6, 4], "is" : [9, 3, 4]}
test_dict2 = {"Gfg": [8, 4, 3], "Best" : [6, 3, 1], "is" : [9, 8, 2]}
  
# printing original lists
print("The original dictionary 1 is : " + str(test_dict1))
print("The original dictionary 2 is : " + str(test_dict2))
  
# Using zip() to perform link keys and values 
res = {key: [ele1 * ele2 for (ele1, ele2) in zip(test_dict1[key], val2)] 
       for (key, val2) in zip(test_dict1.keys(), test_dict2.values())}
  
# printing result 
print("The constructed dictionary : " + str(res)) 
Producción

The original dictionary 1 is : {'Gfg': [4, 6, 7], 'Best': [8, 6, 4], 'is': [9, 3, 4]}
The original dictionary 2 is : {'Gfg': [8, 4, 3], 'Best': [6, 3, 1], 'is': [9, 8, 2]}
The constructed dictionary : {'Gfg': [32, 24, 21], 'Best': [48, 18, 4], 'is': [81, 24, 8]}

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 *