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