为什么python中的字典键()以不同的顺序返回?

时间:2015-02-04 13:33:19

标签: python dictionary

我创建了一个字典a并尝试使用方法keys()来返回其键。以下是我得到的。我注意到keys()的输出不是字典中的字母顺序或原始顺序。

a
Out[1]: {1: 'JAN', 2: 'FEB', 3: 'MAR', 'APR': 4, 'MAY': 5}

a.keys()
Out[2]: ['APR', 1, 2, 3, 'MAY']

任何人都可以帮助我理解为什么会这样。以及订单密钥()在这里使用的是什么?

1 个答案:

答案 0 :(得分:1)

python中的字典使用哈希键,它不保存顺序。所以,你不能指望按键顺序 - 在运行和通话期间可能会有所不同。 如果您需要hashmap 保存顺序,则应使用ordered dict