Aggiungi dizionario a dizionario in Python

Hemank Mehtani 10 ottobre 2023
  1. Usa il metodo update() per aggiungere un dizionario a un altro dizionario in Python
  2. Usa l’operatore di disimballaggio del dizionario ** per aggiungere un dizionario a un altro dizionario in Python
  3. Usa il | Operatore per aggiungere un dizionario a un altro dizionario in Python
  4. Usa il contenitore collections.ChainMap per aggiungere un dizionario a un altro dizionario in Python
Aggiungi dizionario a dizionario in Python

Un dizionario in Python costituisce un gruppo di elementi sotto forma di coppie chiave-valore. È una raccolta disordinata e mutevole.

Discuteremo diversi metodi per aggiungere un dizionario a un altro dizionario in Python in questo tutorial.

Usa il metodo update() per aggiungere un dizionario a un altro dizionario in Python

Il metodo update() concatena un dizionario a un altro dizionario. Usando questo metodo, possiamo inserire coppie chiave-valore di un dizionario nell’altro dizionario.

Per esempio,

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

Produzione:

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

Nel codice sopra, abbiamo concatenato il dizionario D1 e D2 utilizzando il metodo update().

Si noti che in questo metodo il primo dizionario viene aggiornato con i valori del secondo dizionario. Nel nostro esempio, D1 è stato aggiornato.

Usa l’operatore di disimballaggio del dizionario ** per aggiungere un dizionario a un altro dizionario in Python

Possiamo aggiungere due dizionari in Python e memorizzare la loro combinazione in un terzo dizionario usando l’operatore di spacchettamento del dizionario **. Questo metodo non modifica le coppie chiave-valore del dizionario originale.

Questo operatore funziona da Python 3.5.

Per esempio,

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)

Produzione:

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

Nel codice sopra, abbiamo usato ** in Python per aggiungere il primo dizionario D1 e il secondo dizionario D2 in un terzo dizionario separato, D3.

Usa il | Operatore per aggiungere un dizionario a un altro dizionario in Python

Possiamo usare questo operatore nell’ultimo aggiornamento di Python (Python 3.9). È un metodo facile e conveniente per unire due dizionari.

Nel seguente frammento di codice, usiamo il | operatore.

# >= 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)

Produzione:

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

Usa il contenitore collections.ChainMap per aggiungere un dizionario a un altro dizionario in Python

ChainMap viene utilizzato per mappare molti dizionari in un’unica unità. Dobbiamo importarlo dal modulo collezioni.

Usiamo il costruttore ChainMap() per creare un contenitore ChainMap passando i dizionari che vogliamo combinare come un insieme di argomenti.

Vedere il seguente codice.

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)

Produzione:

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

Questo metodo funziona in Python 2.7 e versioni successive.

Articolo correlato - Python Dictionary