A veces, mientras trabajamos con diccionarios de Python, podemos tener problemas en los que necesitamos realizar la eliminación de todos los valores duplicados del diccionario, y no nos preocupa si se elimina alguna clave en el proceso. Este tipo de aplicación puede ocurrir en la programación escolar y en la programación diurna. Analicemos ciertas formas en que se puede realizar esta tarea.
Método n.º 1: Usar bucle
Esta es la forma de fuerza bruta en la que realizamos esta tarea. En esto, hacemos un seguimiento del valor ocurrido y lo eliminamos si se repite.
# Python3 code to demonstrate working of # Remove duplicate values in dictionary # Using loop # initializing dictionary test_dict = { 'gfg' : 10, 'is' : 15, 'best' : 20, 'for' : 10, 'geeks' : 20} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # Remove duplicate values in dictionary # Using loop temp = [] res = dict() for key, val in test_dict.items(): if val not in temp: temp.append(val) res[key] = val # printing result print("The dictionary after values removal : " + str(res))
El diccionario original es: {‘gfg’: 10, ‘for’: 10, ‘geeks’: 20, ‘is’: 15, ‘best’: 20}
El diccionario después de la eliminación de valores: {‘gfg’: 10, ‘ frikis’: 20, ‘es’: 15}
Método #2: Usar la comprensión del diccionario
El siguiente problema también se puede realizar usando la comprensión del diccionario. En esto, realizamos la tarea de manera similar al método anterior, solo como una abreviatura.
# Python3 code to demonstrate working of # Remove duplicate values in dictionary # Using dictionary comprehension # initializing dictionary test_dict = { 'gfg' : 10, 'is' : 15, 'best' : 20, 'for' : 10, 'geeks' : 20} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # Remove duplicate values in dictionary # Using dictionary comprehension temp = {val : key for key, val in test_dict.items()} res = {val : key for key, val in temp.items()} # printing result print("The dictionary after values removal : " + str(res))
El diccionario original es: {‘gfg’: 10, ‘for’: 10, ‘geeks’: 20, ‘is’: 15, ‘best’: 20}
El diccionario después de la eliminación de valores: {‘gfg’: 10, ‘ frikis’: 20, ‘es’: 15}
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