Dado un diccionario con valores como tuplas, la tarea es escribir un programa en Python para encontrar la clave de las tuplas de valor máximo.
Ejemplos:
Entrada: test_dict = {‘gfg’: («a», 3), ‘is’: («c», 9), ‘best’: («k», 10), ‘for’: («p», 11), ‘geeks’ : (‘m’, 2)}
Salida: para
Explicación: 11 es el valor máximo de la tupla y de la clave «para».
Entrada: test_dict = {‘gfg’: («a», 13), ‘is’: («c», 9), ‘best’: («k», 10), ‘for’: («p», 1), ‘geeks’ : (‘m’, 2)}
Salida: gfg
Explicación: 13 es el valor máximo de tupla y para la clave «gfg».
Método #1: Usar max() + valores() + siguiente()
En esto, el máximo de todos los valores de tupla se encuentra usando max(), y los valores se extraen usando values(). El next(), se usa para la iteración usando el método de acceso del iterador, y cada valor de tupla se compara con el valor máximo.
Python3
# Python3 code to demonstrate working of # Maximum tuple value key # Using max() + values() + next() # initializing dictionary test_dict = {'gfg': ("a", 3), 'is': ("c", 9), 'best': ( "k", 10), 'for': ("p", 11), 'geeks': ('m', 2)} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # getting maximum value max_val = max(test_dict.values(), key=lambda sub: sub[1]) # getting key with maximum value using comparison res = next(key for key, val in test_dict.items() if val == max_val) # printing result print("The maximum key : " + str(res))
Producción:
El diccionario original es: {‘gfg’: (‘a’, 3), ‘is’: (‘c’, 9), ‘best’: (‘k’, 10), ‘for’: (‘p’ , 11), ‘geeks’: (‘m’, 2)}
La clave máxima: para
Método n.° 2: usar la comprensión de listas + max() + valores()
En esto, realizamos la tarea de obtener todos los valores coincidentes máximos utilizando la comprensión de listas. Obtener el máximo se hace usando max().
Python3
# Python3 code to demonstrate working of # Maximum tuple value key # Using list comprehension + max() + values() # initializing dictionary test_dict = {'gfg': ("a", 3), 'is': ("c", 9), 'best': ( "k", 10), 'for': ("p", 11), 'geeks': ('m', 2)} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # getting maximum value max_val = max(test_dict.values(), key=lambda sub: sub[1]) # getting key with maximum value using comparison res = [key for key, val in test_dict.items() if val == max_val][0] # printing result print("The maximum key : " + str(res))
Producción:
El diccionario original es: {‘gfg’: (‘a’, 3), ‘is’: (‘c’, 9), ‘best’: (‘k’, 10), ‘for’: (‘p’ , 11), ‘geeks’: (‘m’, 2)}
La clave máxima: para
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