Python | Elementos comunes entre los diccionarios

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)))
Producción :

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 setfunció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)))
Producción :

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *