A veces, mientras trabajamos con los diccionarios de Python, podemos tener problemas en los que necesitamos reordenar los elementos del diccionario, para emparejar claves y valores en orden, el emparejamiento más pequeño con el valor más pequeño, el valor más grande con el más grande y así sucesivamente. Este tipo de aplicación puede ocurrir en dominios competitivos y programación día a día. Analicemos ciertas formas en que se puede realizar esta tarea.
Método n.º 1: usarzip() + sort() + keys() + values()
la combinación de las funcionalidades anteriores se puede usar para resolver este problema. En esto, realizamos la tarea de emparejamiento usando zip() y sort() maneja la clasificación.
# Python3 code to demonstrate working of # Sorted order Dictionary items pairing # Using zip() + sort() + keys() + values() # initializing dictionary test_dict = {45 : 3, 7 : 8, 98 : 4, 10 : 12, 65 : 90, 15 : 19} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # Sorted order Dictionary items pairing # Using zip() + sort() + keys() + values() vals = list(test_dict.values()) vals.sort() keys = list(test_dict.keys()) keys.sort() res = dict(zip(keys, vals)) # printing result print("The sorted order pairing : " + str(res))
The original dictionary is : {65: 90, 98: 4, 7: 8, 10: 12, 45: 3, 15: 19} The sorted order pairing : {65: 19, 98: 90, 7: 3, 10: 4, 45: 12, 15: 8}
Método #2: Usarmap() + values() + zip() + sorted()
La combinación de las funciones anteriores se puede usar para resolver este problema. En esto, realizamos la tarea de ordenar usando sorted(). El zip() y map() se utilizan para emparejar más.
# Python3 code to demonstrate working of # Sorted order Dictionary items pairing # Using map() + values() + zip() + sorted() # initializing dictionary test_dict = {45 : 3, 7 : 8, 98 : 4, 10 : 12, 65 : 90, 15 : 19} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # Sorted order Dictionary items pairing # Using map() + values() + zip() + sorted() res = dict(zip(*map(sorted, (test_dict, test_dict.values())))) # printing result print("The sorted order pairing : " + str(res))
The original dictionary is : {65: 90, 98: 4, 7: 8, 10: 12, 45: 3, 15: 19} The sorted order pairing : {65: 19, 98: 90, 7: 3, 10: 4, 45: 12, 15: 8}
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