6
votes

Python Comment trier cette liste?

lst = [(1,(1,3,5)), (5,(2,3,4)),(3,(2,3,4))]
I want to sort by the first value, descending order.

0 commentaires

5 Réponses :


0
votes
sorted(list, reverse=True, key=lambda x: x[0])
Note also that "list" isn't a great name for your list because it's the built-in list type.

0 commentaires

4
votes
import operator
sorted(lst, reverse=True, key=operator.itemgetter(0))

0 commentaires

12
votes

Tout comme ceci: xxx


2 commentaires

à tous les autres répondeurs: l'index n'est pas requis. Python trie toujours des listes par le premier élément qu'il trouve.


En fait, Python compare les tuples par ordre lexicographique, de sorte qu'il ne trie pas seulement les listes / tuples par leurs premiers éléments. Cette distinction est importante si un tri "stable" par premier élément est souhaité.



0
votes

Vous pouvez trier comme ça. XXX


0 commentaires

6
votes

Trier en place? Utilisation:

lst.sort(reverse=True)


0 commentaires