ID : 215
viewed : 134
Tags : PythonPython Dictionary
94
This article will introduce how to compare two dictionaries in Python.
==
Operator to Compare Two Dictionaries in PythonThe ==
operator in Python can be used to determine if the dictionaries are identical or not.
Here is an example when there are identical dictionaries.
dict1 = dict(name='Tom', Vehicle='Benz Car') dict2 = dict(name='Tom', Vehicle='Benz Car') dict1==dict2
Output:
True
Here is an example, when there are non-identical dictionaries -
dict1 = dict(name='John', Vehicle='Benz Car') dict2 = dict(name='Tom', Vehicle='Benz Car') dict1==dict2
Output:
False
You can compare many dictionaries as mentioned in the following example,
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
Output:
False
Here is how you can write code to compare the dictionaries and determine how many pairs are common between the dictionaries. Below are the steps.
for
loop to traverse through each item in one of the dictionaries. Compare each item of this dictionary with the other dictionary based on the shared index.key:value
pair into the result shared dictionary.Below is an example that demonstrates the method to compare two dictionaries in Python.
In this case the dictionaries are identical.
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")
Output:
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
Next, let us try an example when the dictionaries are non-identical -
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")
Output:
The items common between the dictionaries are - {'name': 'Tom'} The number of items common between the dictionaries are - 1 The dictionaries are non-identical