Heim >Backend-Entwicklung >Python-Tutorial >Sind Python-Wörterbücher in Ordnung?
Die Unordnung des Wörterbuchs bedeutet, dass die Reihenfolge, in der die Daten im Wörterbuch gespeichert werden, nicht mit der Reihenfolge übereinstimmt, in der die Daten aus dem Wörterbuch entnommen werden
Python2s Wörterbuch ist durcheinander
>>> d = {'a':-1,'b':-1,'c':-1}>>> d {'a': -1, 'c': -1, 'b': -1}>>> for k,v in d.items(): ... print k,v ... a -1c -1b -1
Wie kann man also das Wörterbuch in Ordnung halten? OrderedDict verwenden
>>> from collections import OrderedDict >>> d = OrderedDict() >>> d['a'] = 1 >>> d['b'] = 2 >>> d['c'] = 3 >>> d OrderedDict([('a', 1), ('b', 2), ('c', 3)]) >>> for k,v in d.items(): ... print k,v ... a 1 b 2 c 3
Warum ist es ungeordnet? Die Hash-Struktur verfügt über eine Kopfadresse und die darin enthaltenen Daten sind auf verschiedene Listenketten verteilt, sodass sie ungeordnet zu sein scheinen. Für denselben Satz von Wörterbüchern gibt es jedoch immer eine zu verbindende Kennung. Es wird auch so gespeichert, dass die Daten der Reihe nach erfasst, aber nicht nach bestimmten Regeln geordnet werden.
Wörterbücher in Python3 sind geordnet
>>> d = {'a':-1,'b':-1,'c':-1} >>> d {'a': -1, 'b': -1, 'c': -1} >>> for k,v in d.items(): ... print(k,v) ... a -1 b -1 c -1
Das obige ist der detaillierte Inhalt vonSind Python-Wörterbücher in Ordnung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!