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))
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))
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