python - una - Ordenar tuplas basadas en el segundo parámetro
organizar datos python (2)
Puede usar el parámetro key
para list.sort()
:
my_list.sort(key=lambda x: x[1])
o, un poco más rápido,
my_list.sort(key=operator.itemgetter(1))
(Al igual que con cualquier módulo, deberá import operator
para poder usarlo).
Tengo una lista de tuplas que se parecen a esto:
("Person 1",10)
("Person 2",8)
("Person 3",12)
("Person 4",20)
Lo que quiero producir es la lista ordenada en orden ascendente, por el segundo valor de la tupla. Entonces L [0] debería ser ("Person 2", 8)
después de la clasificación.
¿Cómo puedo hacer esto? Usando Python 3.2.2 Si eso ayuda.
def findMaxSales(listoftuples):
newlist = []
tuple = ()
for item in listoftuples:
movie = item[0]
value = (item[1])
tuple = value, movie
newlist += [tuple]
newlist.sort()
highest = newlist[-1]
result = highest[1]
return result
movieList = [("Finding Dory", 486), ("Captain America: Civil
War", 408), ("Deadpool", 363), ("Zootopia", 341), ("Rogue One", 529), ("The Secret Life of Pets", 368), ("Batman v Superman", 330), ("Sing", 268), ("Suicide Squad", 325), ("The Jungle Book", 364)]
print(findMaxSales(movieList))
salida -> Rogue One