Dados dos diccionarios, actualice los valores de otro diccionario si la clave está presente en otro diccionario.
Entrada : test_dict = {“Gfg”: 5, “is”: 8, “Best”: 10, “for”: 8, “Geeks”: 9},
updict = {“Geeks”: 10, “Best”: 17 }
Salida : {‘Gfg’: 5, ‘is’: 8, ‘Best’: 17, ‘for’: 8, ‘Geeks’: 10}
Explicación : los valores «Geeks» y «Best» se actualizaron a 10 y 17.Entrada : test_dict = {“Gfg”: 5, “is”: 8, “Best”: 10, “for”: 8, “Geeks”: 9},
updict = {“Geek”: 10, “Bet”: 17 }
Salida : {‘Gfg’: 5, ‘is’: 8, ‘Best’: 10, ‘for’: 8, ‘Geeks’: 9}
Explicación : No hay valores coincidentes, por lo tanto, diccionario original.
Método #1: Usar bucle
Esta es la forma bruta en la que se puede realizar esta tarea. En esto, ejecutamos un bucle para cada clave en el diccionario de destino y lo actualizamos en caso de que el valor esté presente en otro diccionario.
Python3
# Python3 code to demonstrate working of # Replace dictionary value from other dictionary # Using loop # initializing dictionary test_dict = {"Gfg" : 5, "is" : 8, "Best" : 10, "for" : 8, "Geeks" : 9} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # initializing updict updict = {"Gfg" : 10, "Best" : 17} for sub in test_dict: # checking if key present in other dictionary if sub in updict: test_dict[sub] = updict[sub] # printing result print("The updated dictionary: " + str(test_dict))
El diccionario original es: {‘Gfg’: 5, ‘is’: 8, ‘Best’: 10, ‘for’: 8, ‘Geeks’: 9}
El diccionario actualizado: {‘Gfg’: 10, ‘is’ : 8, ‘Mejor’: 17, ‘para’: 8, ‘Geeks’: 9}
Método #2: Usar la comprensión del diccionario
Este es un enfoque de línea en el que se puede realizar esta tarea. En esto, iteramos para todos los valores del diccionario y actualizamos de una sola línea en la comprensión del diccionario.
Python3
# Python3 code to demonstrate working of # Replace dictionary value from other dictionary # Using dictionary comprehension # initializing dictionary test_dict = {"Gfg" : 5, "is" : 8, "Best" : 10, "for" : 8, "Geeks" : 9} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # initializing updict updict = {"Gfg" : 10, "Best" : 17} res = {key: updict.get(key, test_dict[key]) for key in test_dict} # printing result print("The updated dictionary: " + str(res))
El diccionario original es: {‘Gfg’: 5, ‘is’: 8, ‘Best’: 10, ‘for’: 8, ‘Geeks’: 9}
El diccionario actualizado: {‘Gfg’: 10, ‘is’ : 8, ‘Mejor’: 17, ‘para’: 8, ‘Geeks’: 9}
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