Comparer deux dictionnaires en Python

Najwa Riyaz 30 janvier 2023
  1. Utilisez l’opérateur == pour comparer deux dictionnaires en Python
  2. Écrire du code personnalisé pour comparer deux dictionnaires en Python
Comparer deux dictionnaires en Python

Cet article présentera comment comparer deux dictionnaires en Python.

Utilisez l’opérateur == pour comparer deux dictionnaires en Python

L’opérateur == en Python peut être utilisé pour déterminer si les dictionnaires sont identiques ou non.

Voici un exemple lorsqu’il existe des dictionnaires identiques.

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

Production:

True

Voici un exemple, lorsqu’il existe des dictionnaires non identiques -

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

Production:

False

Vous pouvez comparer de nombreux dictionnaires comme mentionné dans l’exemple suivant,

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

Production:

False

Écrire du code personnalisé pour comparer deux dictionnaires en Python

Voici comment vous pouvez écrire du code pour comparer les dictionnaires et déterminer combien de paires sont communes entre les dictionnaires. Vous trouverez ci-dessous les étapes.

  • Utilisez une boucle for pour parcourir chaque élément dans l’un des dictionnaires. Comparez chaque élément de ce dictionnaire avec l’autre dictionnaire en fonction de l’index partagé.
  • Si les éléments sont égaux, alors placez la paire key:value dans le dictionnaire partagé du résultat.
  • Une fois tout le dictionnaire parcouru, calculez la longueur du dictionnaire partagé du résultat pour déterminer le nombre d’éléments communs entre les dictionnaires.

Vous trouverez ci-dessous un exemple qui illustre la méthode pour comparer deux dictionnaires en Python.

Dans ce cas, les dictionnaires sont identiques.

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")

Production:

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

Ensuite, essayons un exemple lorsque les dictionnaires ne sont pas identiques -

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")

Production:

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

Article connexe - Python Dictionary