Mientras trabajamos con un diccionario de Python, se nos permite crear un nuevo diccionario del diccionario existente que tenga una tupla como clave. Deseamos crear un diccionario de claves singleton con claves solo donde ambos elementos del par son iguales. Esto puede tener aplicaciones en muchos dominios. Analicemos ciertas formas en que se puede realizar esta tarea.
Método #1: Usar bucle
Esta es una forma bruta en la que se puede realizar esta tarea. En esto, iteramos para cada elemento del diccionario de tuplas y comparamos la igualdad para crear un nuevo diccionario.
Python3
# Python3 code to demonstrate working of # Extract Equal Pair Dictionary # Using loop # initializing dictionary test_dict = {(1, 1): 4, (2, 3): 6, (3, 3): 7, (5, 2): 10, (2, 2): 11} # printing original dictionary print(& quot The original dictionary is : & quot + str(test_dict)) # Extract Equal Pair Dictionary # Using loops res = dict() for key, val in test_dict.items(): if key[0] == key[1]: res[key[0]] = val # printing result print(& quot The dictionary after equality testing : & quot + str(res))
Método #2: Usando la comprensión del diccionario:
Esta es otra forma más en la que se puede realizar esta tarea. En esto, usamos la comprensión del diccionario en lugar del bucle para proporcionar taquigrafía.
Python3
# Python3 code to demonstrate working of # Extract Equal Pair Dictionary # Using dictionary comprehension # initializing dictionary test_dict = {(1, 1): 4, (2, 3): 6, (3, 3): 7, (5, 2): 10, (2, 2): 11} # printing original dictionary print(& quot The original dictionary is : & quot + str(test_dict)) # Extract Equal Pair Dictionary # Using dictionary comprehension res = {idx[0]: j for idx, j in test_dict.items() if idx[0] == idx[1]} # printing result print(& quot The dictionary after equality testing : & quot + str(res))
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