Confronta due dizionari in Python

Najwa Riyaz 30 gennaio 2023
  1. Usa l’operatore == per confrontare due dizionari in Python
  2. Scrivi codice personalizzato per confrontare due dizionari in Python
Confronta due dizionari in Python

Questo articolo introdurrà come confrontare due dizionari in Python.

Usa l’operatore == per confrontare due dizionari in Python

L’operatore == in Python può essere utilizzato per determinare se i dizionari sono identici o meno.

Ecco un esempio quando ci sono dizionari identici.

dict1 = dict(name="Tom", Vehicle="Benz Car")
dict2 = dict(name="Tom", Vehicle="Benz Car")
dict1 == dict2

Produzione:

True

Ecco un esempio, quando ci sono dizionari non identici -

dict1 = dict(name="John", Vehicle="Benz Car")
dict2 = dict(name="Tom", Vehicle="Benz Car")
dict1 == dict2

Produzione:

False

Puoi confrontare molti dizionari come indicato nell’esempio seguente,

dict1 = dict(name="John", Vehicle="Benz Car")
dict2 = dict(name="Tom", Vehicle="Benz Car")
dict3 = dict(name="Shona", Vehicle="Alto Car")
dict4 = dict(name="Ruby", Vehicle="Honda Car")
dict1 == dict2 == dict3 == dict4

Produzione:

False

Scrivi codice personalizzato per confrontare due dizionari in Python

Ecco come puoi scrivere codice per confrontare i dizionari e determinare quante coppie sono comuni tra i dizionari. Di seguito sono riportati i passaggi.

  • Usa un cicli for per attraversare ogni elemento in uno dei dizionari. Confronta ogni elemento di questo dizionario con l’altro dizionario basato sull’indice condiviso.
  • Se gli elementi sono uguali, inserisci la coppia key:value nel dizionario condiviso dei risultati.
  • Una volta attraversato l’intero dizionario, calcolare la lunghezza del dizionario condiviso del risultato per determinare il numero di elementi comuni tra i dizionari.

Di seguito è riportato un esempio che dimostra il metodo per confrontare due dizionari in Python.

In questo caso i dizionari sono identici.

dict1 = dict(name="Tom", Vehicle="Mercedes Car")
dict2 = dict(name="Tom", Vehicle="Mercedes Car")
dict1_len = len(dict1)
dict2_len = len(dict2)
total_dict_count = dict1_len + dict2_len

shared_dict = {}

for i in dict1:
    if (i in dict2) and (dict1[i] == dict2[i]):
        shared_dict[i] = dict1[i]

len_shared_dict = len(shared_dict)

print("The items common between the dictionaries are -", shared_dict)
print("The number of items common between the dictionaries are -", len_shared_dict)

if len_shared_dict == total_dict_count / 2:
    print("The dictionaries are identical")
else:
    print("The dictionaries are non-identical")

Produzione:

The items common between the dictionaries are - {'name': 'Tom', 'Vehicle': 'Mercedes Car'}
The number of items common between the dictionaries are - 2
The dictionaries are identical

Quindi, proviamo un esempio quando i dizionari non sono identici -

dict1 = dict(name="Tom", Vehicle="Alto Car")
dict2 = dict(name="Tom", Vehicle="Mercedes Car")
dict1_len = len(dict1)
dict2_len = len(dict2)
total_dict_count = dict1_len + dict2_len

shared_dict = {}

for i in dict1:
    if (i in dict2) and (dict1[i] == dict2[i]):
        shared_dict[i] = dict1[i]
len_shared_dict = len(shared_dict)
print("The items common between the dictionaries are -", shared_dict)
print("The number of items common between the dictionaries are -", len_shared_dict)
if len_shared_dict == total_dict_count / 2:
    print("The dictionaries are identical")
else:
    print("The dictionaries are non-identical")

Produzione:

The items common between the dictionaries are - {'name': 'Tom'}
The number of items common between the dictionaries are - 1
The dictionaries are non-identical

Articolo correlato - Python Dictionary