Compare dois dicionários em Python
-
Use o operador
==
para comparar dois dicionários em Python - Escreva um código personalizado para comparar dois dicionários em Python
Este artigo apresentará como comparar dois dicionários em Python.
Use o operador ==
para comparar dois dicionários em Python
O operador ==
em Python pode ser usado para determinar se os dicionários são idênticos ou não.
Aqui está um exemplo quando existem dicionários idênticos.
dict1 = dict(name="Tom", Vehicle="Benz Car")
dict2 = dict(name="Tom", Vehicle="Benz Car")
dict1 == dict2
Resultado:
True
Aqui está um exemplo, quando há dicionários não idênticos -
dict1 = dict(name="John", Vehicle="Benz Car")
dict2 = dict(name="Tom", Vehicle="Benz Car")
dict1 == dict2
Resultado:
False
Você pode comparar muitos dicionários conforme mencionado no exemplo a seguir,
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
Resultado:
False
Escreva um código personalizado para comparar dois dicionários em Python
Aqui está como você pode escrever código para comparar os dicionários e determinar quantos pares são comuns entre os dicionários. Abaixo estão as etapas.
-
Use um loop
for
para percorrer cada item em um dos dicionários. Compare cada item deste dicionário com o outro dicionário com base no índice compartilhado. -
Se os itens forem iguais, coloque o par
key:value
no dicionário compartilhado de resultados. -
Depois de percorrer todo o dicionário, calcule o comprimento do dicionário compartilhado de resultados para determinar o número de itens comuns entre os dicionários.
Abaixo está um exemplo que demonstra o método para comparar dois dicionários em Python.
Neste caso, os dicionários são idênticos.
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")
Resultado:
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
A seguir, vamos tentar um exemplo em que os dicionários não são idênticos -
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")
Resultado:
The items common between the dictionaries are - {'name': 'Tom'}
The number of items common between the dictionaries are - 1
The dictionaries are non-identical