Dada la Lista de diccionarios, extraiga el valor de las claves i’th dependiendo del valor máximo de la clave Kth.
Entrada : lista_prueba = [{“Gfg”: 3, “es”: 9, “mejor”: 10}, {“Gfg”: 8, “es”: 11, “mejor”: 19}, {“Gfg”: 9, «es»: 16, «mejor»: 1}], K = «mejor», i = «es»
Salida : 11
Explicación : el mejor es el máximo en 19, su valor «es» correspondiente es 11.Entrada : lista_prueba = [{“Gfg”: 3, “es”: 9, “mejor”: 10}, {“Gfg”: 8, “es”: 11, “mejor”: 19}, {“Gfg”: 9, «es»: 16, «mejor»: 1}], K = «Gfg», i = «es»
Salida : 16
Explicación : Gfg es máximo en 9, su valor «es» correspondiente es 16.
Método #1: Usar max() + lambda
La combinación de las funciones anteriores se puede utilizar para resolver este problema. En esto, extraemos el máximo de la clave kth usando max() y lambda. Luego, la i-ésima clave se extrae del diccionario extraído.
Python3
# Python3 code to demonstrate working of # Extract ith Key's Value of K's Maximum value dictionary # Using max() + lambda # initializing lists test_list = [{"Gfg" : 3, "is" : 9, "best" : 10}, {"Gfg" : 8, "is" : 11, "best" : 19}, {"Gfg" : 9, "is" : 16, "best" : 1}] # printing original list print("The original list : " + str(test_list)) # initializing K K = "best" # initializing i i = "Gfg" # using get() to handle missing key, assigning lowest value res = max(test_list, key = lambda ele : ele.get(K, 0))[i] # printing result print("The required value : " + str(res))
The original list : [{'Gfg': 3, 'is': 9, 'best': 10}, {'Gfg': 8, 'is': 11, 'best': 19}, {'Gfg': 9, 'is': 16, 'best': 1}] The required value : 8
Método #2: Usar max() + función externa
Esta es otra manera de resolver este problema. Esto se calcula de manera similar al método anterior, solo que la diferencia es el uso de un comparador personalizado en lugar de la función lambda.
Python3
# Python3 code to demonstrate working of # Extract ith Key's Value of K's Maximum value dictionary # Using max() + external function # custom function as comparator def cust_fnc(ele): return ele.get(K, 0) # initializing lists test_list = [{"Gfg" : 3, "is" : 9, "best" : 10}, {"Gfg" : 8, "is" : 11, "best" : 19}, {"Gfg" : 9, "is" : 16, "best" : 1}] # printing original list print("The original list : " + str(test_list)) # initializing K K = "best" # initializing i i = "Gfg" # using get() to handle missing key, assigning lowest value res = max(test_list, key = cust_fnc)[i] # printing result print("The required value : " + str(res))
The original list : [{'Gfg': 3, 'is': 9, 'best': 10}, {'Gfg': 8, 'is': 11, 'best': 19}, {'Gfg': 9, 'is': 16, 'best': 1}] The required value : 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