如果想让字典有序,可以使用collections.OrderedDict,它现在在C中实现,这使其快4到100倍。
collections.OrderedDict基本使用
将类OrderedDict实例化会得到一个dict子类的实例,支持通常的dict方法。
from collections import OrderedDict
od=OrderedDict()
print(isinstance(od,OrderedDict)) # True
print(isinstance(od,dict)) # True
OrderedDict是记住键首次插入顺序的字典。如果新条目覆盖现有条目,则原始插入位置保持不变。
od["name"] = "aa"
od["age"] = 13
od["gender"] = "girl"
print(od)
#OrderedDict([('name', 'aa'), ('age', 13), ('gender', 'girl')])
删除条目并重新插入会将其移动到末尾。
del od["age"]
od["age"] = 25
print(od)
# OrderedDict([('name', 'aa'), ('gender', 'girl'), ('age', 25)])
参考:https://zhuanlan.zhihu.com/p/110407087