A veces, mientras trabajamos con diccionarios de Python, podemos tener problemas en los que necesitamos realizar la clasificación de elementos en función de varios factores. Uno de ellos puede basarse en la diferencia absoluta de la lista de valores duales. Esto puede ocurrir en Python > 3.6, ya que se ordenan los diccionarios. Este tipo de problema puede venir en el dominio de datos. Vamos a discutir una forma en que este problema puede ser resuelto.
Método: Usar sorted() + lambda + abs()
+ comprensión del diccionario
La combinación de las funciones anteriores se puede usar para resolver este problema. En esto, realizamos la tarea de ordenar usando sorted(), la función lambda se usa para proporcionar la lógica y la función abs() se usa para calcular la diferencia absoluta.
# Python3 code to demonstrate working of # Sort Dictionary by Value Difference # Using sorted() + lambda + abs() + dictionary comprehension # initializing dictionary test_dict = {'gfg' : [34, 87], 'is' : [10, 13], 'best' : [19, 27], 'for' : [10, 50], 'geeks' : [15, 45]} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # Sort Dictionary by Value Difference # Using sorted() + lambda + abs() + dictionary comprehension res = dict(sorted(test_dict.items(), key = lambda sub: abs(sub[1][0] - sub[1][1]))) # printing result print("The sorted dictionary : " + str(res))
El diccionario original es: {‘gfg’: [34, 87], ‘is’: [10, 13], ‘best’: [19, 27], ‘for’: [10, 50], ‘geeks’: [15, 45]}
El diccionario ordenado: {‘is’: [10, 13], ‘best’: [19, 27], ‘geeks’: [15, 45], ‘for’: [10, 50] , ‘gfg’: [34, 87]}
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