Wie verbessern Lambda-Funktionen die Sortierung mit der Funktion „sorted()'?

DDD
Freigeben: 2024-10-26 15:34:02
Original
533 Leute haben es durchsucht

 How Do Lambda Functions Enhance Sorting with the `sorted()` Function?

Warum Lambda für sortierte Schlüsselargumente verwenden?

Die Funktion sorted() erfordert die Angabe eines Schlüsselarguments, um Elemente auf eine bestimmte Weise zu sortieren. Lambda-Ausdrücke dienen in diesem Zusammenhang trotz ihres willkürlichen Aussehens einem bestimmten Zweck.

Intuition hinter Lambda

  • Lambda-Funktionen werden normalerweise verwendet, wenn Sie eine einzelne benötigen -Zeilenfunktion, ohne eine separate Funktion zu definieren.
  • Sie folgen der Syntax: lambda input_variable(s): expression

So funktioniert Lambda für Sorted

  • Lambda-Funktionen in sorted() liefern Anweisungen zum Extrahieren von Werten aus Listenelementen, die den Sortierprozess steuern.
  • Das Schlüsselargument lautet: „Während wir die Liste durchlaufen, verwenden Sie diese Funktion, um Verwandeln Sie jedes Element in einen Wert, der zum Sortieren verwendet wird. 8, 23] und die folgende Lambda-Funktion:
Lambda x: x % 2 == 0

Dieses Lambda prüft, ob jedes Element in der Liste gerade ist (x % 2 = = 0).

Sorted transformiert die Liste basierend auf dieser Lambda-Funktion, was zu einer Folge von Einsen (gerade Zahlen) und Nullen (ungerade Zahlen) führt: [0, 1, 0, 1, 1, 1, 0]

Die endgültige sortierte Liste ist: [3, 3, 23, 6, 2, 4, 8]

  • Zusätzliche Punkte
  • Auch wenn die transformierte Liste boolesche Werte enthält, bleibt die ursprüngliche Reihenfolge der Elemente in den Unterlisten erhalten.

Die Funktion sorted() führt die Sortierung nur einmal durch, was dazu führt, dass gerade Zahlen weiterhin unsortiert sind. Lambda-Funktionen können Werte aus komplexen Elementen wie Tupeln extrahieren, was beim Sortieren von Listen mit verschachtelten Strukturen hilft.

  • Warum Variable: Variable[0]
  • Die Syntax key=lambda variable: variable[0] wird verwendet, wenn Sie eine Liste von Tupeln basierend auf dem ersten Element jedes Tupels sortieren möchten. Hier repräsentiert Variable jedes Tupel und Variable[0] repräsentiert das erste Element innerhalb dieses Tupels.

Das obige ist der detaillierte Inhalt vonWie verbessern Lambda-Funktionen die Sortierung mit der Funktion „sorted()'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage