Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Grundlagen von Sorted | Höherwertige Funktionen und Lambdas
Funktionale Programmierkonzepte in Python
Abschnitt 2. Kapitel 4
single

single

bookGrundlagen von Sorted

Swipe um das Menü anzuzeigen

Das Sortieren von Daten ist eine häufige Operation beim Arbeiten mit Listen in Python. Die Funktion sorted ist eine eingebaute Higher-Order-Funktion, mit der sich beliebige Iterables sortieren lassen. Sie gibt eine neue, sortierte Liste zurück und lässt die Originaldaten unverändert. sorted kann mit oder ohne benutzerdefinierte Sortierlogik verwendet werden. Standardmäßig ordnet sorted die Elemente in aufsteigender Reihenfolge an, aber mit den optionalen Parametern kann die Sortierreihenfolge und das Sortierkriterium gesteuert werden.

Die wichtigsten Parameter für sorted sind:

  • iterable: die zu sortierenden Daten;
  • key: eine optionale Funktion, die den Sortierwert für jedes Element bestimmt;
  • reverse: ein boolescher Wert, der bei Einstellung auf True die Daten in absteigender Reihenfolge sortiert.

Angenommen, es gibt eine Liste von Zahlen, die in aufsteigender Reihenfolge sortiert werden soll. Dies kann einfach mit sorted(numbers) erreicht werden. Um die Zahlen in absteigender Reihenfolge zu sortieren, kann reverse=True übergeben werden.

12345
numbers = [9, 5, 2, 1] # Sorting in reverse order sorted_desc = sorted(numbers, reverse=True) print(sorted_desc)
copy

Der Parameter key kann auch verwendet werden, um komplexere Datenstrukturen wie Listen von Tupeln oder Dictionaries zu sortieren, indem eine Funktion angegeben wird, die den Vergleichswert aus jedem Element extrahiert.

12345
words = ["apple", "kiwi", "banana"] # Sorting by the length of each string sorted_words = sorted(words, key=len) print(sorted_words)
copy

Für den Parameter key kann jede Funktion übergeben werden, einschließlich einer Lambda-Funktion oder einer zuvor definierten Funktion. Dadurch ist sorted eine höherwertige Funktion, da sie eine andere Funktion als Argument akzeptiert. Das Sortieren ist nicht auf Zahlen oder Zeichenketten beschränkt; auch komplexe Objekte können sortiert werden, solange eine geeignete key-Funktion bereitgestellt wird.

Note
Hinweis

Das ursprüngliche Iterable wird durch sorted nicht verändert, es wird immer eine neue Liste zurückgegeben. Wenn eine Liste direkt sortiert werden soll, sollte stattdessen die Methode list.sort() verwendet werden.

Aufgabe

Wischen, um mit dem Codieren zu beginnen

Sortieren einer Liste von Tupeln nach dem zweiten Element jedes Tupels mit der Funktion sorted und einer benannten Funktion als key-Parameter.

  • Gegeben ist eine Liste namens pairs, die Tupel aus zwei Ganzzahlen enthält.
  • Definieren Sie eine Funktion namens get_second_element, die ein Tupel entgegennimmt und dessen zweiten Wert zurückgibt.
  • Verwenden Sie die Funktion sorted und übergeben Sie get_second_element als key-Parameter, um pairs nach dem zweiten Wert in jedem Tupel zu sortieren.
  • Speichern Sie das Ergebnis in einer Variablen namens sorted_pairs.
  • Vergessen Sie nicht, pass zu entfernen.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 4
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

some-alt