Agregar diccionario a diccionario en Python

Hemank Mehtani 10 octubre 2023
  1. Utilice el método update() para agregar un diccionario a otro diccionario en Python
  2. Utilice el operador de desempaquetado de diccionario ** para agregar un diccionario a otro diccionario en Python
  3. Utilice el | Operador para agregar un diccionario a otro diccionario en Python
  4. Utilice el contenedor collections.ChainMap para agregar un diccionario a otro diccionario en Python
Agregar diccionario a diccionario en Python

Un diccionario en Python constituye un grupo de elementos en forma de pares clave-valor. Es una colección desordenada y mutable.

Discutiremos diferentes métodos para agregar un diccionario a otro diccionario en Python en este tutorial.

Utilice el método update() para agregar un diccionario a otro diccionario en Python

El método update() concatena un diccionario con otro diccionario. Con este método, podemos insertar pares clave-valor de un diccionario en el otro diccionario.

Por ejemplo,

D1 = {"loginID": "xyz", "country": "USA"}
D2 = {"firstname": "justin", "lastname": "lambert"}
D1.update(D2)
print(D1)

Producción :

{'loginID': 'xyz', 'country': 'USA', 'firstname': 'justin', 'lastname': 'lambert'}

En el código anterior, hemos concatenado el diccionario D1 y D2 usando el método update().

Tenga en cuenta que en este método, el primer diccionario se actualiza con los valores del segundo diccionario. En nuestro ejemplo, D1 se actualizó.

Utilice el operador de desempaquetado de diccionario ** para agregar un diccionario a otro diccionario en Python

Podemos agregar dos diccionarios en Python y almacenar su combinación en un tercer diccionario usando el operador de desempaquetado de diccionario **. Este método no cambia los pares clave-valor del diccionario original.

Este operador trabaja desde Python 3.5.

Por ejemplo,

def merge(D1, D2):
    py = {**D1, **D2}
    return py


D1 = {"loginID": "xyz", "country": "USA"}
D2 = {"firstname": "justin", "lastname": "lambert"}
D3 = merge(D1, D2)
print(D3)

Producción :

{'loginID': 'xyz', 'country': 'USA', 'firstname': 'justin', 'lastname': 'lambert'}

En el código anterior, hemos utilizado ** en Python para agregar el primer diccionario D1 y el segundo diccionario D2 en un tercer diccionario separado, D3.

Utilice el | Operador para agregar un diccionario a otro diccionario en Python

Podemos usar este operador en la última actualización de Python (Python 3.9). Es un método fácil y conveniente para fusionar dos diccionarios.

En el siguiente fragmento de código, usamos | operador.

# >= Python 3.9

def Merge(D1, D2):
    py = D1 | D2
    return py


D1 = {"RollNo": "10", "Age": "18"}
D2 = {"Marks": "90", "Grade": "A"}
D3 = Merge(D1, D2)
print(D3)

Producción :

{'RollNo': '10', 'Age':'18' ,'Marks': '90', 'Grade': 'A'}

Utilice el contenedor collections.ChainMap para agregar un diccionario a otro diccionario en Python

ChainMap se usa para mapear muchos diccionarios en una unidad. Tenemos que importarlo desde el módulo de colecciones.

Usamos el constructor ChainMap() para crear un contenedor ChainMap mientras pasamos los diccionarios que queremos combinar como un conjunto de argumentos.

Consulte el siguiente código.

from collections import ChainMap

D1 = {"w": 1, "x": 2}
D2 = {"y": 3, "z": 4}
D3 = ChainMap(D1, D2)
D3 = {k: v for d in (D1, D2) for (k, v) in d.items()}
print(D3)

Producción :

{'w': 1, 'x': 2, 'y': 3, 'z': 4}

Este método funciona en Python 2.7 y versiones posteriores.

Artículo relacionado - Python Dictionary