Direkt zum Inhalt

Wie sortiert man ein Wörterbuch in Python nach Werten?

Lerne effiziente Methoden, um ein Wörterbuch in Python nach Werten zu sortieren. Lerne, wie du Sachen aufsteigend oder absteigend sortieren kannst, und hol dir ein paar coole Tipps zum Sortieren von Schlüsseln.
Aktualisierte 29. Aug. 2025  · 5 Min. Lesezeit

Sortieren ist eine wichtige Sache bei der Datenbearbeitung, und Wörterbücher in Python Python sind da keine Ausnahme. Egal, ob wir an einem komplizierten Datenanalyseprojekt oder einem einfachen Skript arbeiten, es kann echt nützlich sein, zu wissen, wie man ein Wörterbuch nach Werten sortiert.

In diesem Artikel schauen wir uns die verschiedenen Methoden an, wie man Wörterbücher in Python nach ihren Werten sortieren kann, damit wir die Tools haben, um unsere Daten so zu organisieren, wie wir es brauchen.

Die kurze Antwort: Wie sortiert man ein Wörterbuch in Python nach Werten?

Um ein Wörterbuch schnell nach Werten zu sortieren, können wir die in Python integrierte Funktion .sorted() zusammen mit der Funktion lambda nutzen. Diese Methode ist für die meisten Fälle einfach und effizient.

student_scores = {
    'Alex': 88,
    'Ben': 75,
    'Cyrus': 93,
    'Denver': 85
}
sorted_by_values = dict(sorted(student_scores.items(), key=lambda item: item[1]))

print(sorted_by_values)

# Expected output:
# {'Ben': 75, 'Denver': 85, 'Alex': 88, 'Cyrus': 93}

Jetzt lass uns mal einen Schritt zurücktreten und uns mit Python-Dictionaries beschäftigen und warum wir sie vielleicht sortieren müssen.

Was sind Python-Wörterbücher?

Python Dictionaries sind eine Art von Datenstruktur, die Daten in Schlüssel-Wert-Paaren speichert. Sie sind echt vielseitig und machen schnelles Suchen, Einfügen und Löschen möglich. Hier ist ein einfaches Beispiel:

student_scores = {
    'Alex': 88,
    'Ben': 75,
    'Cyrus': 93,
    'Denver': 85
}

# No expected output

Im obigen Wörterbuch sind die Namen der Schüler die Schlüssel und ihre Punktzahlen die Werte. 

Wörterbücher sind in vielen Situationen nützlich, zum Beispiel wenn wir Daten effizient speichern und abrufen müssen. Manchmal muss man diese Daten aber nach Werten statt nach Schlüsseln sortieren – zum Beispiel, wenn wir die Schüler nach ihren Noten ordnen wollen.

Wie sortiert man ein Wörterbuch in Python nach Werten?

Schauen wir uns jetzt mal genauer die Funktion .sorted() in Python an und wie man sie konkret zum Sortieren von Wörterbüchern nach Werten benutzt.

Wie sortiert man ein Wörterbuch nach Wert mit .sorted()

Die Funktion .sorted() ist ein echt starkes und flexibles Tool zum Sortieren in Python. Um ein Wörterbuch nach seinen Werten zu sortieren, können wir eine Lambda-Funktion verwenden, um anzugeben, dass die Sortierung auf den Werten des Wörterbuchs basieren soll.

student_scores = {
    'Alex': 88,
    'Ben': 75,
    'Cyrus': 93,
    'Denver': 85
}
sorted_by_values = dict(sorted(student_scores.items(), key=lambda item: item[1]))

print(sorted_by_values)

# Expected output: 
# {'Ben': 75, 'Denver': 85, 'Alex': 88, 'Cyrus': 93}

In diesem Beispiel gibt student_scores.items() ein Ansichtsobjekt zurück, das eine Liste der Schlüssel-Wert-Tupelpaare des Wörterbuchs anzeigt. Die Funktion .sorted() sortiert diese Paare nach den Werten (item[1]), und dict() macht aus der sortierten Liste wieder ein Wörterbuch.

Wie sortiert man ein Wörterbuch nach Wert in absteigender oder aufsteigender Reihenfolge?

Standardmäßig sortiert die Funktion .sorted() in aufsteigender Reihenfolge. Je nach Situation können wir das aber ganz einfach ändern, um die Daten in absteigender oder aufsteigender Reihenfolge zu sortieren, indem wir den Parameter reverse auf True oder False setzen.

Wie sortiert man ein Wörterbuch in aufsteigender Reihenfolge?

Wie schon gesagt, wird ein Wörterbuch bei der Funktion .sorted() standardmäßig in aufsteigender Reihenfolge sortiert . Wir können auch eine aufsteigende Reihenfolge hinbekommen, indem wir den Parameter reverse auf False setzen.

sorted_by_values_asc = dict(sorted(student_scores.items(), key=lambda item: item[1], reverse=False))
print(sorted_by_values_asc)

# Expected output:
# {'Ben': 75, 'Denver': 85, 'Alex': 88, 'Cyrus': 93}

Wie sortiert man ein Wörterbuch in absteigender Reihenfolge?

Wenn wir in aufsteigender Reihenfolge sortieren wollen, können wir den Parameter reverse auf Truesetzen.

sorted_by_values_desc = dict(sorted(student_scores.items(), key=lambda item: item[1], reverse=True))
print(sorted_by_values_desc)

# Expected output:
# {'Cyrus': 93, 'Alex': 88, 'Denver': 85, 'Ben': 75}

Bonus: Wie sortiert man ein Wörterbuch in Python nach Schlüssel?

Dieser Artikel geht zwar hauptsächlich um das Sortieren nach Werten, aber es ist auch gut zu wissen, wie man ein Wörterbuch nach seinen Schlüsseln sortiert. Das kannst du ähnlich machen, indem du die Funktion .sorted() benutzt.

sorted_by_keys = dict(sorted(student_scores.items()))
print(sorted_by_keys)

# Expected output:
# {'Alex': 88, 'Ben': 75, 'Cyrus': 93, 'Denver': 85}

Für die absteigende Reihenfolge stellst du einfach reverse=True:

sorted_by_keys_desc = dict(sorted(student_scores.items(), reverse=True))
print(sorted_by_keys_desc)

# Expected output:
# {'Denver': 85', 'Cyrus': 93, 'Ben': 75, 'Alex': 88}

Fazit

Das Sortieren eines Wörterbuchs nach seinen Werten in Python ist eine gängige Aufgabe, die mit der Funktion .sorted() ganz einfach erledigt werden kann. Egal, ob wir die Daten in aufsteigender oder absteigender Reihenfolge brauchen, wenn wir diese Techniken verstehen, können wir unsere Datenbearbeitung einfacher und effizienter gestalten. Wenn wir diese Sortiermethoden richtig anwenden, können wir sicherstellen, dass unsere Daten immer so organisiert sind, wie es für uns am besten passt.

Häufig gestellte Fragen

FRAGE 1: Kann ich ein Wörterbuch nach Werten sortieren, wenn die Werte Zeichenfolgen statt Zahlen sind?

A1: Ja, wir können ein Wörterbuch nach Werten sortieren, auch wenn die Werte Zeichenfolgen sind. Die Funktion „ .sorted() “ sortiert die Werte alphabetisch in aufsteigender oder absteigender Reihenfolge, genau wie bei Zahlen.

FRAGE 2: Wie kann ich ein Wörterbuch nach Werten sortieren, wenn es verschachtelte Wörterbücher enthält?

A2: Um ein Wörterbuch mit verschachtelten Wörterbüchern zu sortieren, müssen wir eine eigene Sortierfunktion machen, die die relevanten verschachtelten Werte herauszieht und vergleicht. Dafür braucht man eine kompliziertere Lambda-Funktion oder eine eigene Funktion, um den Vergleich zu machen.

Q3: Kann ich ein Wörterbuch direkt nach Werten sortieren, ohne ein neues Wörterbuch zu erstellen?

A3: Nein, Wörterbücher in Python sind in Versionen vor 3.7 von Natur aus ungeordnete Sammlungen, und obwohl sie ab Python 3.7 die Reihenfolge der Einfügungen beibehalten, gibt es keine eingebaute Methode, um sie an Ort und Stelle zu sortieren. Das Sortieren eines Wörterbuchs führt immer dazu, dass ein neues Wörterbuch mit der gewünschten Reihenfolge erstellt wird.

FRAGE 4: Wie aufwendig ist es, ein Wörterbuch in Python nach Werten zu sortieren?

A4: Die Zeitkomplexität beim Sortieren eines Wörterbuchs nach Werten mit der Funktion „ .sorted() “ ist O(n log n), wobei n die Anzahl der Schlüssel-Wert-Paare im Wörterbuch ist. Das liegt daran, dass .sorted() “ intern Timsort nutzt, einen hybriden Sortieralgorithmus mit dieser Komplexität.

FRAGE 5: Verändert das Sortieren eines Wörterbuchs nach Werten das ursprüngliche Wörterbuch?

A5: Nein, wenn du ein Wörterbuch mit der Funktion „ .sorted() “ nach Werten sortierst, wird ein neues Wörterbuch erstellt. Das ursprüngliche Wörterbuch bleibt so, wie es ist.


Neetika Khandelwal's photo
Author
Neetika Khandelwal
LinkedIn
Ich bin Java-Entwickler und ein erfahrener technischer Autor, der sich auf Data Science, künstliche Intelligenz (AI) und Java-Programmierung spezialisiert hat. Mit mehr als 3 Jahren Erfahrung in der Softwareentwicklung habe ich mir ein gutes Fachwissen angeeignet, um robuste, skalierbare Anwendungen zu erstellen und die Vielseitigkeit von Java zur Lösung komplexer Probleme zu nutzen. Es ist meine Leidenschaft, mein Wissen mit der breiten Tech-Community zu teilen. Mit umfassenden Fachartikeln, Tutorials und Leitfäden versuche ich, komplizierte Themen aus den Bereichen Data Science und KI zu entmystifizieren und sie für Anfänger und erfahrene Profis zugänglich zu machen. Derzeit habe ich über 125+ Blogs veröffentlicht.
Themen

Lerne mit diesen Kursen mehr über Python!

Kurs

Einführung in Python

4 Std.
6.5M
Lerne in nur vier Stunden die Grundlagen der Datenanalyse mit Python und entdecke beliebte Python-Pakete.
Siehe DetailsRight Arrow
Kurs starten
Mehr anzeigenRight Arrow
Verwandt

Lernprogramm

Ein Leitfaden zu Python-Hashmaps

Finde heraus, was Hashmaps sind und wie sie in Python mit Hilfe von Wörterbüchern umgesetzt werden.
Javier Canales Luna's photo

Javier Canales Luna

Lernprogramm

Wie man Listen in Python aufteilt: Einfache Beispiele und fortgeschrittene Methoden

Lerne, wie du Python-Listen mit Techniken wie Slicing, List Comprehensions und itertools aufteilen kannst. Finde heraus, wann du welche Methode für die beste Datenverarbeitung nutzen solltest.
Allan Ouko's photo

Allan Ouko

Lernprogramm

Python-Wörterbuch anhängen: Wie man Schlüssel-Wert-Paare hinzufügt

Lerne, wie du Schlüssel-Wert-Paare in einem Python-Wörterbuch mit Methoden wie der eckigen Klammer, .update() für viele Einträge und .setdefault() für bedingte Einträge hinzufügst.
Samuel Shaibu's photo

Samuel Shaibu

Lernprogramm

Wie man in Python einen Eintrag aus einer Liste löscht

Lerne, wie du Elemente aus einer Liste in Python löschen kannst. Mach dich mit Methoden wie remove(), pop() und del für die Listenverwaltung vertraut.
Allan Ouko's photo

Allan Ouko

Lernprogramm

Python-Methode list() mit Beispielen erklärt

Lerne, wie du mit der Python-Funktion index() die Position von Elementen in Listen findest.
Sejal Jaiswal's photo

Sejal Jaiswal

Lernprogramm

So kürzt man eine Zeichenfolge in Python: Drei verschiedene Methoden

Lerne die Grundlagen zum Entfernen von führenden und nachfolgenden Zeichen aus einer Zeichenfolge in Python.
Adel Nehme's photo

Adel Nehme

Mehr anzeigenMehr anzeigen