Einführung
Wörterbücher sind eine grundlegende Datenstruktur in Python, die es Ihnen ermöglicht, Schlüssel-Wert-Paare zu speichern. Manchmal müssen Sie jedoch ein Wörterbuch nach seinen Werten statt nach seinen Schlüsseln sortieren. In dieser Herausforderung müssen Sie eine Funktion erstellen, die ein Wörterbuch nach seinen Werten sortiert.
Wörterbuch sortieren
Schreiben Sie eine Funktion namens sort_dict_by_value(d, reverse=False), die ein Wörterbuch d annimmt und es nach seinen Werten sortiert. Die Funktion sollte ein neues Wörterbuch zurückgeben, das die gleichen Schlüssel wie das ursprüngliche Wörterbuch hat, aber die Werte in aufsteigender Reihenfolge sortiert sind. Wenn der Parameter reverse auf True gesetzt ist, sollte die Funktion das Wörterbuch in absteigender Reihenfolge sortieren.
Um dieses Problem zu lösen, können Sie die folgenden Schritte ausführen:
- Verwenden Sie
dict.items(), um eine Liste von Tupelpaaren ausdzu erhalten. - Sortieren Sie die Liste mit einer Lambda-Funktion und
sorted(). - Verwenden Sie
dict(), um die sortierte Liste wieder in ein Wörterbuch umzuwandeln. - Verwenden Sie den Parameter
reverseinsorted(), um das Wörterbuch in umgekehrter Reihenfolge zu sortieren, basierend auf dem zweiten Argument.
⚠️ ACHTUNG: Die Werte des Wörterbuchs müssen vom gleichen Typ sein.
def sort_dict_by_value(d, reverse = False):
return dict(sorted(d.items(), key = lambda x: x[1], reverse = reverse))
d = {'one': 1, 'three': 3, 'five': 5, 'two': 2, 'four': 4}
sort_dict_by_value(d) ## {'one': 1, 'two': 2, 'three': 3, 'four': 4, 'five': 5}
sort_dict_by_value(d, True)
## {'five': 5, 'four': 4, 'three': 3, 'two': 2, 'one': 1}
Zusammenfassung
In dieser Herausforderung haben Sie gelernt, wie man ein Wörterbuch in Python nach seinen Werten sortiert. Sie können diese Kenntnisse nutzen, um Daten, die in Wörterbüchern gespeichert sind, effektiver zu manipulieren und zu analysieren.