Verstehen der Syntax von sortiert(key=lambda: ...)
Mit der Funktion sorted() in Python können Sie a sortieren Liste basierend auf einem benutzerdefinierten Sortierschlüssel. Das Schlüsselargument akzeptiert ein Callable, das angibt, wie jedes Element zum Sortieren verglichen werden soll. Wenn es sich bei dieser aufrufbaren Funktion um eine Lambda-Funktion handelt, folgt ihre Syntax einem bestimmten Muster:
key=lambda variable: variable[index]
Lambda-Funktionssyntax
Eine Lambda-Funktion ist eine anonyme Funktion, die mit Lambda definiert wird , das eine oder mehrere Variablen als Eingabe akzeptiert und eine Berechnung oder Operation durchführt. Die Syntax einer Lambda-Funktion lautet:
lambda input_variable(s): expression
Schlüsselargument in sorted()
Das Schlüsselargument in sorted() nimmt einen aufrufbaren Wert an, und zwar in unserem Fall , das Callable ist eine Lambda-Funktion. Die Lambda-Funktion wird auf jedes Element in der Liste angewendet und das Ergebnis wird zum Vergleichen von Elementen zum Sortieren verwendet.
Verstehen der Syntax
Die Variable in der Lambda-Funktion wird jedem Element der Liste zugewiesen, während die Funktion die Liste durchläuft. Auf die Variable folgt ein Doppelpunkt (:), gefolgt von dem Ausdruck, der den für die Sortierung zu verwendenden Wert extrahiert. Im bereitgestellten Beispiel greift der Ausdruck auf das erste Element jedes Elements in der Liste zu, dargestellt als Variable[0].
Warum „Variable“ zweimal angegeben wird
Die Variable wird zweimal angegeben, da Lambda-Funktionen einen einzelnen Doppelpunkt (:) als Trennzeichen zwischen den Eingabevariablen und dem Ausdruck verwenden. Der ersten Variablen vor dem Doppelpunkt werden die Elemente der Liste zugewiesen, und der zweiten Variablen nach dem Doppelpunkt wird der Ausdruck zugewiesen, der den Sortierwert extrahiert.
Beispiel
Betrachten Sie das folgende Beispiel:
<code class="python">mylist = [(3, 6), (2, 5), (1, 4)] sorted(mylist, key=lambda x: x[0])</code>
In diesem Beispiel extrahiert die Lambda-Funktion lambda x: x[0] das erste Element jedes Tupels in mylist. Die sortierte Liste wird dann nach dem ersten Element der Tupel in aufsteigender Reihenfolge sortiert.
Fazit
Die Syntax von sortiert(key=lambda: ...) beinhaltet die Verwendung einer Lambda-Funktion zum Definieren eines benutzerdefinierten Sortierschlüssels. Die Lambda-Funktion akzeptiert eine Eingabevariable, die jedem Element der Liste zugewiesen ist, und extrahiert einen Wert aus diesem Element, der zum Sortieren verwendet wird. Das Verständnis dieser Syntax und des Verhaltens von Lambda-Funktionen innerhalb der Funktion sorted() ist entscheidend für die effektive Sortierung von Listen basierend auf benutzerdefinierten Kriterien.
Das obige ist der detaillierte Inhalt vonWie funktioniert die Syntax „sorted(key=lambda: ...)' in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!