Daten effizient sortieren
Teil des Abschnitts Logik und Ablaufsteuerung der Python-Journey von Coddy. Lektion 48 von 78.
Das Sortieren ist eine grundlegende Operation in der Informatik, und Python bietet leistungsstarke integrierte Werkzeuge, um Daten effizient zu sortieren. Die wichtigste Funktion zum Sortieren ist sorted(), die zum Sortieren verschiedener Datentypen verwendet werden kann, darunter Zahlen, Zeichenketten und komplexere Objekte.
Grundlegendes Sortieren:
Die Funktion sorted() akzeptiert ein iterierbares Objekt (z. B. eine Liste, ein Tupel oder eine Menge) als Argument und gibt eine neue Liste zurück, die die sortierten Elemente enthält. Standardmäßig sortiert sie in aufsteigender Reihenfolge.
numbers = [3, 1, 4, 1, 5, 9, 2, 6]
sorted_numbers = sorted(numbers)
print(sorted_numbers)
# Ausgabe: [1, 1, 2, 3, 4, 5, 6, 9]In diesem Beispiel sortiert sorted() die Liste numbers in aufsteigender Reihenfolge.
Umgekehrtes Sortieren:
Um in absteigender Reihenfolge zu sortieren, kannst du den Parameter reverse verwenden und ihn auf True setzen.
numbers = [3, 1, 4, 1, 5, 9, 2, 6]
sorted_numbers_desc = sorted(numbers, reverse=True)
print(sorted_numbers_desc)
# Ausgabe: [9, 6, 5, 4, 3, 2, 1, 1]Hier sortiert sorted() die Liste numbers in absteigender Reihenfolge.
Zeichenketten sortieren:
Die Funktion sorted() kann Zeichenketten auch nach ihrer lexikografischen Reihenfolge sortieren (d. h. nach der Reihenfolge, in der sie in einem Wörterbuch erscheinen würden).
words = ["apple", "banana", "cherry"]
sorted_words = sorted(words)
print(sorted_words)
# Ausgabe: ['apple', 'banana', 'cherry']In diesem Beispiel sortiert sorted() die Liste words in alphabetischer Reihenfolge.
Benutzerdefiniertes Sortieren mit einer Schlüsselfunktion:
Für komplexere Sortieranforderungen kannst du den Parameter key verwenden, um eine Funktion anzugeben, die die Sortierreihenfolge bestimmt. Die Funktion key wird vor dem Sortieren auf jedes Element angewendet, und die zurückgegebenen Werte werden zum Vergleichen verwendet.
words = ["banana", "kiwi", "fig"]
sorted_words_by_length = sorted(words, key=len)
print(sorted_words_by_length)
# Ausgabe: ['fig', 'kiwi', 'banana']In diesem Fall sortiert sorted() die Liste words basierend auf der Länge jedes Wortes und verwendet dabei die Funktion len() als key.
Aufgabe
EinfachSchreibe ein Programm, das mithilfe der Funktion sorted() die folgenden Sortieraufgaben ausführt:
- Sortiere eine Liste von Zahlen in aufsteigender Reihenfolge.
- Sortiere dieselbe Liste von Zahlen in absteigender Reihenfolge.
- Sortiere eine Liste von Zeichenketten in alphabetischer Reihenfolge.
- Sortiere dieselbe Liste von Zeichenketten nach ihrer Länge.
Probier es selbst
# Starter-Eingaben
numbers = [5, 3, 8, 1, 2]
words = ["elephant", "cat", "dolphin", "bee"]
# Aufgabe 1: Zahlen in aufsteigender Reihenfolge sortieren
# Aufgabe 2: Zahlen in absteigender Reihenfolge sortieren
# Aufgabe 3: Wörter alphabetisch sortieren
# Aufgabe 4: Wörter nach Länge sortieren
# Ersetze 'None' durch deinen Code für jede Aufgabe
ascending_numbers = None
descending_numbers = None
alphabetical_words = None
length_sorted_words = None
# Ergebnisse ausgeben
print("Ascending:", ascending_numbers)
print("Descending:", descending_numbers)
print("Alphabetical:", alphabetical_words)
print("By Length:", length_sorted_words)Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Logik und Ablaufsteuerung
1Variablen-Erkundung
KonstantenMehrfache VariablenzuweisungenVariablen tauschenPlatzhalter-VariablenZahlen rundenListen-Casting4Kontaktbuch-Anwendung
Menü anzeigenKontakt hinzufügen7Sets Teil 2
Mathematische Operationen Teil 1Mathematische Operationen Teil 2Rückblick – SchatzsucheTeilmengen und ObermengenIterieren über SetsRückblick – Turnier-Tracker10Grundlagen der List Comprehensions
Die SyntaxEinfache Listen erstellenBedingungen hinzufügenDatenaggregation nutzenRückblick - House Of ListsRückblick - Elements Of Freedom13Bestandsverwaltungssystem
ProjektübersichtArtikel hinzufügen2Dictionaries Teil 1
Was ist ein Dictionary?Ein Dictionary erstellenZugriff auf WerteDictionaries ändernRückblick – Rezept-Manager5Fortgeschrittene Entscheidungsfindung
Ternärer OperatorZugehörigkeitsprüfungenIdentitätsprüfungenEinrückungsfehlerZusammenfassung - Urlaubsfilter8Studenten-Datenverwaltung
ProjektübersichtStudent hinzufügen11Fortgeschrittene Funktionen
Mehrere Werte zurückgebenLambda-Funktionen Teil 1Lambda-Funktionen Teil 2Recap Challenge – Lambda SortRekursive Funktionen Teil 1Rekursive Funktionen Teil 2Recap – Verschachtelte Listen summieren14Funktionen höherer Ordnung
Die Map-FunktionDie Filter-FunktionWiederholung – E-Mail-ValidatorWiederholung – Zahlenprozessor3Dictionaries Teil 2
Dictionary-MethodenVerschachtelte DictionariesKeys überprüfenDictionaries durchlaufenZusammenfassung – Häufigkeitszähler9Fortgeschrittene Datenaggregation
Verwendung von SumMinimum und Maximum findenDaten effizient sortierenRückblick - Dictionary Sorter12Grundlagen der Fehlerbehandlung
Was ist Fehlerbehandlung?Der Try- und Except-BlockBehandlung mehrerer ExceptionsRückblick – Warenkorb-FehlerÜbe selbstständig: Online-Python-Compiler