lst = [(1,(1,3,5)), (5,(2,3,4)),(3,(2,3,4))]
Ich möchte nach dem ersten Wert in absteigender Reihenfolge sortieren.Python, wie man diese Liste sortiert?
lst = [(1,(1,3,5)), (5,(2,3,4)),(3,(2,3,4))]
Ich möchte nach dem ersten Wert in absteigender Reihenfolge sortieren.Python, wie man diese Liste sortiert?
wie folgt aus:
sorted(lst, reverse=True)
sorted(list, reverse=True, key=lambda x: x[0])
Beachten Sie auch, dass "Liste" kein großartiger Name für Ihre Liste ist, weil es der integrierte Listentyp ist.
import operator
sorted(lst, reverse=True, key=operator.itemgetter(0))
Sie mögen diese sortieren.
sorted(lst, key=lambda a: a[0], reverse=True)
An der Verwendungsstelle sortieren? Verwenden Sie:
lst.sort(reverse=True)
an jeden anderen Beantworter: der Index ist nicht erforderlich. Python sortiert Listen immer nach dem ersten gefundenen Element. –
Tatsächlich vergleicht Python Tupel nach lexikographischer Ordnung, so dass es nicht nur Listen/Tupel nach ihren ersten Elementen sortiert. Diese Unterscheidung ist wichtig, wenn eine "stabile" Sortierung nach dem ersten Element gewünscht wird. – hvr