from collections import OrderedDict
import pprint
menu = {"about" : "about", "login" : "login", 'signup': "signup"}
menu = OrderedDict(menu)
pprint.pprint(menu.items())
import sys
sys.exit()
输出是:
[('about', 'about'), ('signup', 'signup'), ('login', 'login')]
因此,即使使用 OrderedDict
也不会保留顺序。我知道字典默认情况下不保留初始顺序,以及所有这些东西。但我想了解为什么 OrderedDict
不起作用。
最佳答案
通过将项目放入(无序的)dict 并从中构建 OrderedDict,您已经丢弃了原始顺序。从元组列表而不是字典构造 OrderedDict。
关于python - OrderedDict 不保留顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26232936/