Programa de Python que muestra la clave del valor de la lista con el rango máximo

Dado un Diccionario con claves y valores que son listas, el siguiente programa muestra la clave del valor cuyo rango es máximo.

Range = Maximum number-Minimum number

Entrada : test_dict = {“Gfg”: [6, 2, 4, 1], “es”: [4, 7, 3, 3, 8], “Mejor”: [1, 0, 9, 3]} 
Salida : Mejor 
explicación : 9 – 0 = 9, Rango máximo en comparación con todas las demás listas dadas como valores
Entrada : test_dict = {“Gfg”: [16, 2, 4, 1], “Mejor”: [1, 0, 9, 3]} 
Salida : Gfg 
Explicación : 16 – 1 = 15, rango máximo en comparación con todas las demás listas dadas como valores
 

Método 1: Usar max() , min() y loop 

En esto, obtenemos max() y min() de cada lista y realizamos la diferencia para encontrar el rango. Luego, este valor se almacena y la diferencia máxima de todos esos valores se calcula aplicando max() en la lista de resultados.

Python3

# initializing dictionary
test_dict = {"Gfg" : [6, 2, 4, 1], "is" : [4, 7, 3, 3, 8], "Best" : [1, 0, 9, 3]}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
max_res = 0
for sub, vals in test_dict.items():
      
    # storing maximum of difference
    max_res = max(max_res, max(vals) - min(vals))    
    if max_res == max(vals) - min(vals):
        res = sub
          
# printing result 
print("The maximum element key : " + str(res)) 

Producción:

El diccionario original es: {‘Gfg’: [6, 2, 4, 1], ‘is’: [4, 7, 3, 3, 8], ‘Best’: [1, 0, 9, 3]}

La clave del elemento máximo: Mejor

Método 2: usar la comprensión de listas , max() y min() 

En esto, calculamos el rango máximo y luego extraemos la clave que coincide con esa diferencia usando la comprensión de lista.

Python3

# initializing dictionary
test_dict = {"Gfg" : [6, 2, 4, 1], "is" : [4, 7, 3, 3, 8], "Best" : [1, 0, 9, 3]}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# getting max value 
max_res = max([max(vals) - min(vals) for sub, vals in test_dict.items()])
  
# getting key matching with maximum value 
res = [sub for sub in test_dict if max(test_dict[sub]) - min(test_dict[sub]) == max_res][0]
  
# printing result 
print("The maximum element key : " + str(res)) 

Producción:

El diccionario original es: {‘Gfg’: [6, 2, 4, 1], ‘is’: [4, 7, 3, 3, 8], ‘Best’: [1, 0, 9, 3]}

La clave del elemento máximo: Mejor

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 *