Sind Wörterbücher in Python geordnet?

silencement
Freigeben: 2019-06-12 15:11:23
Original
9368 Leute haben es durchsucht

Sind Wörterbücher in Python geordnet?

Die Unordnung des Wörterbuchs bedeutet, dass die Reihenfolge, in der Daten im Wörterbuch gespeichert werden, nicht mit der Reihenfolge übereinstimmt, in der Daten aus dem Wörterbuch entnommen werden

Das Wörterbuch von Python2 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
Nach dem Login kopieren

Wie hält man also das Wörterbuch in Ordnung? 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
Nach dem Login kopieren

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
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSind Wörterbücher in Python geordnet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage