Python: ordene el diccionario por elemento máximo / mínimo en la lista de valores

Dado el diccionario, realice la clasificación en función del elemento máximo o mínimo presente en la lista de valores del diccionario.

Entrada : test_dict = {“Gfg”: [6, 4], “mejor”: [8, 4], “para”: [7, 13], “geeks”: [15, 5]} Salida: {
geeks ‘: [15, 5], ‘for’: [7, 13], ‘best’: [8, 4], ‘Gfg’: [6, 4]} Explicación: el máximo de valores es 15, ocurre en
« geeks ” clave, por lo tanto, en la 1ª posición y así sucesivamente.

Entrada : test_dict = {“Gfg”: [6, 4], “mejor”: [8, 4]} Salida: {‘mejor’: [8, 4]
, ‘Gfg’: [6, 4]}
Explicación : El máximo de valores es 8, ocurre en la clave «mejor», por lo tanto, en la primera posición y así sucesivamente.

Método n.º 1: usar sorted() + max() + comprensión de diccionario + reversa + lambda

La combinación de las funciones anteriores se puede utilizar para resolver este problema. En esto, realizamos la tarea de ordenar usando sorted(), el máximo se extrae usando max(), el reverso se usa para obtener el primer elemento máximo y la función lambda se usa para extender la lógica max() a la función ordenada.

Python3

# Python3 code to demonstrate working of 
# Sort dictionary by max / min element in value list
# Using sorted() + max() + dictionary comprehension + reverse + lambda
  
# initializing dictionary
test_dict = {"Gfg" : [6, 4], "is" : [10, 3], "best" : [8, 4],
             "for" : [7, 13], "geeks" : [15, 5]}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# lambda function driving maximum operation on sorted()
# dictionary comprehension used to reconstruct dictionary
res = {key: test_dict[key] for key in sorted(test_dict, key = lambda ele: max(test_dict[ele]),
       reverse = True)}
  
# printing result 
print("Reverse Sorted dictionary on basis of max values : " + str(res)) 
Producción

The original dictionary is : {'Gfg': [6, 4], 'is': [10, 3], 'best': [8, 4], 'for': [7, 13], 'geeks': [15, 5]}
Reverse Sorted dictionary on basis of max values : {'geeks': [15, 5], 'for': [7, 13], 'is': [10, 3], 'best': [8, 4], 'Gfg': [6, 4]}

Método n.° 2: usar sorted() + min() + comprensión de diccionario + reversa + lambda

Este es un método similar a la función anterior, la única diferencia es que realizamos la ordenación en función del valor mínimo más alto en los valores del diccionario.

Python3

# Python3 code to demonstrate working of 
# Sort dictionary by max / min element in value list
# Using sorted() + min() + dictionary comprehension + reverse + lambda
  
# initializing dictionary
test_dict = {"Gfg" : [6, 4], "is" : [10, 3], "best" : [8, 4],
             "for" : [7, 13], "geeks" : [15, 5]}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# lambda function driving minimum operation on sorted()
# dictionary comprehension used to reconstruct dictionary
res = {key: test_dict[key] for key in sorted(test_dict, key = lambda ele: min(test_dict[ele]),
       reverse = True)}
  
# printing result 
print("Reverse Sorted dictionary on basis of min values : " + str(res)) 
Producción

The original dictionary is : {'Gfg': [6, 4], 'is': [10, 3], 'best': [8, 4], 'for': [7, 13], 'geeks': [15, 5]}
Reverse Sorted dictionary on basis of min values : {'for': [7, 13], 'geeks': [15, 5], 'Gfg': [6, 4], 'best': [8, 4], 'is': [10, 3]}

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 *