Python | Obtenga el primer elemento con valor máximo en la lista de tuplas

En Python, podemos vincular información estructural en forma de tuplas y luego recuperarla. Pero a veces requerimos la información de la tupla correspondiente al valor máximo de otros índices de tupla. Esta funcionalidad tiene muchas aplicaciones, como la clasificación. Analicemos ciertas formas en que esto se puede lograr.

Método n.º 1: usarmax() + operator.itemgetter()
Podemos obtener el máximo del índice de tupla correspondiente de una lista usando el índice de obtención de elementos clave proporcionado y luego mencionar la información de índice requerida usando la especificación de índice al final.

# Python3 code to demonstrate 
# to get tuple info. of maximum value tuple
# using max() + itemgetter()
from operator import itemgetter
  
# initializing list 
test_list = [('Rash', 143), ('Manjeet', 200), ('Varsha', 100)]
  
# printing original list 
print ("Original list : " + str(test_list))
  
# using max() + itemgetter()
# to get tuple info. of maximum value tuple
res = max(test_list, key = itemgetter(1))[0]
  
# printing result
print ("The name with maximum score is : " + res)
Producción:

Original list : [('Rash', 143), ('Manjeet', 200), ('Varsha', 100)]
The name with maximum score is : Manjeet

 
Método n.º 2: el uso de max() + lambda
este método es casi similar al método discutido anteriormente, solo que la diferencia es que la función lambda realiza la especificación y el procesamiento del índice de tupla de destino para obtener el máximo. Esto mejoró la legibilidad del código.

# Python3 code to demonstrate 
# to get tuple info. of maximum value tuple
# using max() + lambda
  
# initializing list 
test_list = [('Rash', 143), ('Manjeet', 200), ('Varsha', 100)]
  
# printing original list 
print ("Original list : " + str(test_list))
  
# using max() + lambda
# to get tuple info. of maximum value tuple
res = max(test_list, key = lambda i : i[1])[0]
  
# printing result
print ("The name with maximum score is : " + res)
Producción:

Original list : [('Rash', 143), ('Manjeet', 200), ('Varsha', 100)]
The name with maximum score is : Manjeet

 
Método n.º 3: usosorted() + lambda
La tarea realizada por los max()dos métodos anteriores se puede realizar utilizando la clasificación inversa e imprimiendo el primer elemento. La función lambda realiza una tarea similar a los métodos mencionados anteriormente.

# Python3 code to demonstrate 
# to get tuple info. of maximum value tuple
# using sorted() + lambda
  
# initializing list 
test_list = [('Rash', 143), ('Manjeet', 200), ('Varsha', 100)]
  
# printing original list 
print ("Original list : " + str(test_list))
  
# using sorted() + lambda
# to get tuple info. of maximum value tuple
res = sorted(test_list, key = lambda i: i[1], reverse = True)[0][0]
  
# printing result
print ("The name with maximum score is : " + res)
Producción:

Original list : [('Rash', 143), ('Manjeet', 200), ('Varsha', 100)]
The name with maximum score is : Manjeet

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 *