Daten effizient sortieren
Teil des Abschnitts Logic & Flow der Python-Journey von Coddy. Lektion 48 von 78.
Sorting ist eine grundlegende Operation in der Informatik, und Python bietet leistungsstarke integrierte Werkzeuge, um data effizient zu sortieren. Die wichtigste Funktion zum Sortieren ist sorted(), die verwendet werden kann, um verschiedene Arten von data zu sortieren, darunter numbers, Zeichenfolgen und komplexere Objekte.
Grundlegendes Sortieren:
Die Funktion sorted() nimmt ein iterierbares Objekt (z. B. eine Liste, ein Tupel oder eine Menge) als Argument entgegen und gibt eine neue Liste zurück, die die sortierten Elemente enthält. Standardmäßig sortiert sie in ascending order.
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 ascending order.
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 descending 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 numbers in ascending order.
- Sortiere dieselbe Liste von numbers in descending order.
- Sortiere eine Liste von Zeichenketten in alphabetischer Reihenfolge.
- Sortiere dieselbe Liste von Zeichenketten anhand ihrer length.
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 Logic & Flow
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