我试图通过以下方式向字典添加元素:
a = {}
a['b'] = 1
a['a'] = 2
最后看起来像:
{'a': 2, 'b': 1}
但实际上我希望字典按顺序包含密钥:
{'b': 1, 'a': 2}
任何人都能解释一下这个吗?当实际字典(哈希图)没有任何顺序时,为什么键会按字母顺序排序?
答案 0 :(得分:1)
你是正确的,因为字典不是有序的,而是散列的。因此,不应依赖字典的顺序。
您可以使用OrderedDict帮助您实现目标:
from collections import OrderedDict
a = OrderedDict()
a['b'] = 1
a['a'] = 2
> a
> OrderedDict([('b', 1), ('a', 2)])