Ich habe eine Liste von Tupeln, die ungefähr so aussehen:
("Person 1",10)
("Person 2",8)
("Person 3",12)
("Person 4",20)
Was ich produzieren möchte, ist die Liste in aufsteigender Reihenfolge nach dem zweiten Wert des Tupels sortiert. Also sollte L [0] sein("Person 2", 8)
nach dem Sortieren sein.
Wie kann ich das machen? Verwenden von Python 3.2.2 Wenn das hilft.
Antworten:
Sie können den
key
Parameter verwenden, umlist.sort()
:oder etwas schneller
(Wie bei jedem Modul müssen Sie
import operator
es verwenden können.)quelle
L.sort(key=operator.itemgetter(1))
in meinem Code zu verwenden, aber ich erhalte einen NameError, der 'Operator' ist nicht definiert. Muss ich etwas Besonderes importieren?import operator
, um die Funktion zu nutzen. Wenn Sie das zu Ihrer Antwort hinzufügen, werde ich es als akzeptiert markieren.Und wenn Sie Python 3.X verwenden, können Sie die
sorted
Funktion auf die Mylist anwenden. Dies ist nur eine Ergänzung zu der Antwort, die @Sven Marnach oben gegeben hat.quelle
sorted
stattdessen verwenden würdenlist.sort
.Ausgabe -> Rogue One
quelle