Unire dizionari in Python

Mattepuffo's logo
Unire dizionari in Python

Unire dizionari in Python

Supponiamo di avere due o più dizionari da unire.

In Python abbiamo diversi modi per fare questa operazione; in tutti i casi non ci servono moduli esterni.

Tralasciamo l'esempio più facile che consiste nell'iterare su un dizionario ed aggiungerlo all'altro; ci sono modi più belli!

Qui sotto tutti gli esempi con il commento:

from collections import ChainMap

dict1 = {
    'matteo': 'roma',
    'simona': 'new york',
    'francesco': 'londra'
}

dict2 = {
    'marco': 'terracina',
    'miriam': 'parigi'
}

# COPY E UPDATE
dict3 = dict1.copy()
dict3.update(dict2)
print(dict3)

# OPERATORE UNPACKING
dict4 = {**dict1, **dict2}
print(dict4)

# CHAIN MAP
dict5 = ChainMap(dict1, dict2)
print(dict5)

# OPERATORE MERGE
dict6 = dict1 | dict2
print(dict6)

Alcun note:

  • l'operatore merge è disponibile solo dalla versione 3.9 di Python
  • come potete ChainMap non restituisce un nuovo dizionario, ma un oggetto; sta a voi poi elaborarlo

Enjoy!


Condividi

Commentami!