A veces, mientras trabajamos con Python, podemos encontrarnos con un problema en el que necesitamos comprobar el mismo número de elementos entre dos diccionarios. Esto tiene una aplicación en casos de desarrollo web y otros dominios también. Analicemos ciertas formas en que se puede realizar esta tarea.
Método n.º 1: usar la comprensión del diccionario
Esta tarea en particular se puede realizar en una línea usando la comprensión del diccionario, que ofrece una forma de compactar la lógica bruta larga y solo verifica los elementos iguales y el conteo de incrementos.
# Python3 code to demonstrate the working of # Equal items among dictionaries # Using dictionary comprehension # initializing dictionaries test_dict1 = {'gfg' : 1, 'is' : 2, 'best' : 3} test_dict2 = {'gfg' : 1, 'is' : 2, 'good' : 3} # printing original dictionaries print("The original dictionary 1 is : " + str(test_dict1)) print("The original dictionary 2 is : " + str(test_dict2)) # Equal items among dictionaries # Using dictionary comprehension res = {key: test_dict1[key] for key in test_dict1 if key in test_dict2 and test_dict1[key] == test_dict2[key]} # printing result print("The number of common items are : " + str(len(res)))
The original dictionary 1 is : {'gfg': 1, 'best': 3, 'is': 2} The original dictionary 2 is : {'gfg': 1, 'is': 2, 'good': 3} The number of common items are : 2
Método n.º 2: usar el set()
operador + XOR +items()
La combinación de los métodos anteriores se puede usar para realizar esta tarea en particular. En esto, la set
función elimina los duplicados y el operador XOR calcula los elementos coincidentes.
# Python3 code to demonstrate working of # Equal items among dictionaries # Using set() + XOR operator + items() # initializing dictionaries test_dict1 = {'gfg' : 1, 'is' : 2, 'best' : 3} test_dict2 = {'gfg' : 1, 'is' : 2, 'good' : 3} # printing original dictionaries print("The original dictionary 1 is : " + str(test_dict1)) print("The original dictionary 2 is : " + str(test_dict2)) # Equal items among dictionaries # Using set() + XOR operator + items() res = set(test_dict1.items()) ^ set(test_dict2.items()) # printing result print("The number of common items are : " + str(len(res)))
The original dictionary 1 is : {'gfg': 1, 'best': 3, 'is': 2} The original dictionary 2 is : {'gfg': 1, 'is': 2, 'good': 3} The number of common items are : 2
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA