Para ordenar uma lista de tuplas, a função sorted() classifica o primeiro item da tupla, depois o segundo, e assim por diante.
Vamos a um exemplo: tenho uma lista de pessoas com nome, idade e salário. Quero classificá-la por idade (primeiro os mais jovens), salário (primeiro os que ganham mais) e por último, os nomes em ordem alfabética.
>>> pessoas = [('Vicente', 49, 1500), ('Felipe', 49, 2500), ('Roberta', 41, 2500), ('Ana', 41, 2500)]
>>> def ordena(t):
... return (t[1], t[2] *-1, t[0])
>>> sorted(pessoas, key=ordena)Viu só? Simples assim.
0 comentários:
Postar um comentário