Sortieren einer Liste von Listen nach einem Index mit Python
Das Sortieren einer Liste von Listen nach einem bestimmten Index der inneren Liste kann erreicht werden in Python mit dem Itemgetter-Operator aus dem Operatormodul.
Problem Aussage:
Gegeben eine Liste von Listen, in der jede innere Liste drei Elemente enthält: zwei Ganzzahlen und eine Zeichenfolge, besteht das Ziel darin, die äußere Liste basierend auf dem Zeichenfolgenwert in den inneren Listen zu sortieren.
Lösung:
Der Itemgetter-Operator kann mithilfe des Schlüsselarguments der sortierten Funktion auf eine Liste von Listen angewendet werden. Dies ermöglicht die Angabe des Index der inneren Liste, der zum Sortieren verwendet werden soll.
Python-Code:
>>> from operator import itemgetter >>> L = [[0, 1, 'f'], [4, 2, 't'], [9, 4, 'afsd']] >>> sorted(L, key=itemgetter(2)) [[9, 4, 'afsd'], [0, 1, 'f'], [4, 2, 't']]
Erklärung:
Im obigen Code:
Alternativ: a Die Lambda-Funktion kann anstelle von Itemgetter verwendet werden:
>>> sorted(L, key=lambda x: x[2]) [[9, 4, 'afsd'], [0, 1, 'f'], [4, 2, 't']]
Allerdings ist der Itemgetter-Ansatz in diesem Szenario im Allgemeinen effizienter.
Das obige ist der detaillierte Inhalt vonWie sortiere ich eine Liste von Listen nach einem bestimmten Index in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!