Programa de Python para encontrar la clave de tuplas de valor máximo en un diccionario

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *