Adicionar dicionário ao dicionário em Python

Hemank Mehtani 10 outubro 2023
  1. Use o método update() para adicionar um dicionário a outro dicionário em Python
  2. Use o operador de desempacotamento de dicionário ** para adicionar um dicionário a outro dicionário em Python
  3. Use o | Operador para adicionar um dicionário a outro dicionário em Python
  4. Use o contêiner collections.ChainMap para adicionar um dicionário a outro dicionário em Python
Adicionar dicionário ao dicionário em Python

Um dicionário em Python constitui um grupo de elementos na forma de pares chave-valor. É uma coleção desordenada e mutável.

Discutiremos diferentes métodos para anexar um dicionário a outro dicionário em Python neste tutorial.

Use o método update() para adicionar um dicionário a outro dicionário em Python

O método update() concatena um dicionário a outro dicionário. Usando este método, podemos inserir pares de valores-chave de um dicionário para o outro dicionário.

Por exemplo,

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

Resultado:

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

No código acima, concatenamos o dicionário D1 e D2 usando o método update().

Observe que, neste método, o primeiro dicionário é atualizado com os valores do segundo dicionário. Em nosso exemplo, D1 foi atualizado.

Use o operador de desempacotamento de dicionário ** para adicionar um dicionário a outro dicionário em Python

Podemos adicionar dois dicionários em Python e armazenar sua combinação em um terceiro dicionário usando o operador de desempacotamento de dicionário **. Este método não altera os pares de valores-chave do dicionário original.

Este operador funciona a partir do Python 3.5.

Por exemplo,

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)

Resultado:

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

No código acima, usamos ** em Python para adicionar o primeiro dicionário D1 e o segundo dicionário D2 em um terceiro dicionário separado, D3.

Use o | Operador para adicionar um dicionário a outro dicionário em Python

Podemos usar esse operador na última atualização do Python (Python 3.9). É um método fácil e conveniente para mesclar dois dicionários.

No seguinte trecho de código, usamos o | 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)

Resultado:

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

Use o contêiner collections.ChainMap para adicionar um dicionário a outro dicionário em Python

ChainMap é usado para mapear muitos dicionários em uma unidade. Temos que importá-lo do módulo de coleções.

Usamos o construtor ChainMap() para criar um contêiner ChainMap enquanto passamos os dicionários que queremos combinar como um conjunto de argumentos.

Veja o seguinte 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)

Resultado:

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

Este método funciona no Python 2.7 e superior.

Artigo relacionado - Python Dictionary