So sortieren Sie ein Wörterbuch mit Python
Wörterbücher in Python sind ungeordnete Datenstrukturen. Es gibt jedoch Fälle, in denen das Sortieren eines Wörterbuchs nach seinen Schlüsseln erforderlich ist.
Beispieleingabe:
{2:3, 1:89, 4:5, 3:0}
Gewünschte Ausgabe:
{1:89, 2:3, 3:0, 4:5}
Standard-Python Wörterbücher
Standard-Python-Wörterbücher behalten die Schlüsselreihenfolge erst ab Python-Version 3.7 bei. Vor Version 3.7 führt die Verwendung der Funktion sorted(d.items()) nicht zum gewünschten Ergebnis, da diese Wörterbücher die Reihenfolge der sortierten Paare nicht beibehalten.
OrderedDict
Für Versionen vor Python 3.7 besteht die Lösung darin, das zu verwenden OrderedDict-Klasse aus dem Modul collections. Diese Klasse speichert Schlüssel-Wert-Paare in der Reihenfolge, in der sie eingefügt werden, und gewährleistet so eine konsistente Reihenfolge.
import collections d = {2:3, 1:89, 4:5, 3:0} # Create an OrderedDict from sorted key-value pairs od = collections.OrderedDict(sorted(d.items())) print(od)
Ausgabe:
OrderedDict([(1, 89), (2, 3), (3, 0), (4, 5)])
Python 3
Für Python-Versionen 3 und höher sollte stattdessen die Methode .items() verwendet werden von .iteritems():
for k, v in od.items(): print(k, v)
Ausgabe:
1 89 2 3 3 0 4 5
Das obige ist der detaillierte Inhalt vonWie sortiere ich ein Python-Wörterbuch nach Schlüsseln?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!