Python: clave de valor de registro máximo en el diccionario

A veces, mientras trabajamos con registros de diccionario, podemos tener problemas en los que necesitamos encontrar la clave con el valor máximo de una clave particular de registros anidados en la lista. Esto puede tener aplicación en dominios como el desarrollo web y el aprendizaje automático. Analicemos ciertas formas en que se puede realizar esta tarea.

Método n.º 1: Usar bucle
Esta es una forma de fuerza bruta en la que se puede realizar esta tarea. En esto, iteramos a través de cada clave para las claves y asignamos a max, el máximo de clave requerida en el registro anidado.

# Python3 code to demonstrate working of 
# Maximum record value key in dictionary
# Using loop
  
# initializing dictionary
test_dict = {'gfg' : {'Manjeet' : 5, 'Himani' : 10},
             'is' : {'Manjeet' : 8, 'Himani' : 9},
             'best' : {'Manjeet' : 10, 'Himani' : 15}}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# initializing search key
key = 'Himani'
  
# Maximum record value key in dictionary
# Using loop
res = None
res_max = 0
for sub in test_dict:
    if test_dict[sub][key] > res_max:
        res_max = test_dict[sub][key]
        res = sub
  
# printing result 
print("The required key is : " + str(res)) 
Producción :

El diccionario original es: {‘mejor’: {‘Himani’: 15, ‘Manjeet’: 10}, ‘gfg’: {‘Himani’: 10, ‘Manjeet’: 5}, ‘is’: {‘Himani’ : 9, ‘Manjeet’: 8}}
La clave requerida es : mejor

Método #2: Uso de max()la función + lambda
Este es un enfoque de línea para resolver este problema. En esto, realizamos la tarea de iteración utilizando el argumento de clave máxima, pasando una función lambda que vincula la lógica requerida.

# Python3 code to demonstrate working of 
# Maximum record value key in dictionary
# Using max() + lambda function
  
# initializing dictionary
test_dict = {'gfg' : {'Manjeet' : 5, 'Himani' : 10},
             'is' : {'Manjeet' : 8, 'Himani' : 9},
             'best' : {'Manjeet' : 10, 'Himani' : 15}}
  
# printing original dictionary
print("The original dictionary is : " + str(test_dict))
  
# initializing search key
key = 'Himani'
  
# Maximum record value key in dictionary
# Using max() + lambda function
res = max(test_dict, key = lambda sub: test_dict[sub][key])
  
# printing result 
print("The required key is : " + str(res)) 
Producción :

El diccionario original es: {‘mejor’: {‘Himani’: 15, ‘Manjeet’: 10}, ‘gfg’: {‘Himani’: 10, ‘Manjeet’: 5}, ‘is’: {‘Himani’ : 9, ‘Manjeet’: 8}}
La clave requerida es : 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 *