A veces, mientras trabajamos con diccionarios de Python, podemos tener problemas en los que necesitamos realizar la actualización del diccionario con otras claves del diccionario. Esto puede tener aplicaciones en dominios en los que necesitamos agregar ciertos registros a registros capturados previamente. Analicemos ciertas formas en que se puede realizar esta tarea.
Método n.º 1: Usar bucle
Esta es una forma de fuerza bruta en la que se puede realizar esta tarea. En esto, buscamos claves en otro diccionario y agregamos los elementos en el nuevo diccionario.
# Python3 code to demonstrate working of # Update dictionary with other dictionary # Using loop # initializing dictionaries test_dict1 = {'gfg' : 1, 'best' : 2, 'for' : 4, 'geeks' : 6} test_dict2 = {'for' : 3, 'geeks' : 5} # printing original dictionaries print("The original dictionary 1 is : " + str(test_dict1)) print("The original dictionary 2 is : " + str(test_dict2)) # Update dictionary with other dictionary # Using loop for key in test_dict1: if key in test_dict2: test_dict1[key] = test_dict2[key] # printing result print("The updated dictionary is : " + str(test_dict1))
El diccionario original 1 es: {‘mejor’: 2, ‘para’: 4, ‘gfg’: 1, ‘geeks’: 6}
El diccionario original 2 es: {‘para’: 3, ‘geeks’: 5}
El diccionario actualizado es: {‘mejor’: 2, ‘para’: 3, ‘gfg’: 1, ‘geeks’: 5}
Método #2: Uso de la comprensión del diccionario
Esta es otra forma más en la que se puede realizar esta tarea. En esto, iteramos para el diccionario y realizamos la actualización en una sola línea usando comprensión.
# Python3 code to demonstrate working of # Update dictionary with other dictionary # Using dictionary comprehension # initializing dictionaries test_dict1 = {'gfg' : 1, 'best' : 2, 'for' : 4, 'geeks' : 6} test_dict2 = {'for' : 3, 'geeks' : 5} # printing original dictionaries print("The original dictionary 1 is : " + str(test_dict1)) print("The original dictionary 2 is : " + str(test_dict2)) # Update dictionary with other dictionary # Using dictionary comprehension res = {key : test_dict2.get(key, val) for key, val in test_dict1.items()} # printing result print("The updated dictionary is : " + str(res))
El diccionario original 1 es: {‘mejor’: 2, ‘para’: 4, ‘gfg’: 1, ‘geeks’: 6}
El diccionario original 2 es: {‘para’: 3, ‘geeks’: 5}
El diccionario actualizado es: {‘mejor’: 2, ‘para’: 3, ‘gfg’: 1, ‘geeks’: 5}
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