Sie definieren ein Wörterbuch in einer bestimmten Reihenfolge und möchten diese Reihenfolge beibehalten, wenn Sie darauf zugreifen oder darüber iterieren.
Beginnend mit Python 3.6 behalten Wörterbücher standardmäßig die Einfügereihenfolge bei. Dies wird mithilfe einer Array-basierten Hash-Tabelle erreicht, in der die Schlüssel und Werte in der Reihenfolge gespeichert werden, in der sie hinzugefügt werden.
Zum Beispiel behält die folgende Wörterbuchdeklaration die Schlüsselreihenfolge bei:
d = {'ac': 33, 'gw': 20, 'ap': 102, 'za': 321, 'bs': 10}
Dieses Verhalten war ursprünglich ein Implementierungsdetail in Python 3.6. In Python 3.7 wurde es jedoch zu einer Sprachspezifikation, die sicherstellte, dass alle Python-Implementierungen die Wörterbuchreihenfolge beibehalten.
Die Verwendung von Wörterbüchern mit beibehaltener Reihenfolge kann in Anwendungen von Vorteil sein, bei denen die Die Reihenfolge der Schlüssel und Werte ist von Bedeutung, wie zum Beispiel:
Während Wörterbücher in Python 3.6 erhalten bleiben order können Sie immer noch auf Situationen stoßen, in denen die zusätzliche Funktionalität der Klasse „collections.OrderedDict()“ nützlich ist. Es bietet Funktionen wie:
Python 3.6 und spätere Versionen integrieren standardmäßig die Einfügereihenfolge in Wörterbücher und stellen Folgendes bereit: bequeme und vorhersehbare Handhabung von Schlüssel-Wert-Paaren in ihrer deklarierten Reihenfolge. Für spezielle Anforderungen, bei denen reversible oder neu anordbare Wörterbücher erforderlich sind, bleibt die OrderedDict-Klasse jedoch weiterhin eine praktikable Option.
Das obige ist der detaillierte Inhalt vonWie behalte ich die Reihenfolge der Schlüssel in Python-Wörterbüchern bei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!