为什么 python returns 中字典的 keys() 顺序不同?
why keys() of dictionary in python returns in a different order?
我创建了一个字典 a
并尝试使用方法 keys()
来 return 它的键。下面是我得到的。我注意到 keys()
的输出不是按字母顺序或字典中的原始顺序。
a
Out[1]: {1: 'JAN', 2: 'FEB', 3: 'MAR', 'APR': 4, 'MAY': 5}
a.keys()
Out[2]: ['APR', 1, 2, 3, 'MAY']
任何人都可以帮助我理解为什么会这样。 keys() 在这里使用的顺序是什么?
python 中的字典使用散列作为键,并且不保存顺序。因此,您不能指望按键顺序 - 它在运行和调用期间可能会有所不同。
如果需要hashmap and保存顺序,应该使用ordered dict
我创建了一个字典 a
并尝试使用方法 keys()
来 return 它的键。下面是我得到的。我注意到 keys()
的输出不是按字母顺序或字典中的原始顺序。
a
Out[1]: {1: 'JAN', 2: 'FEB', 3: 'MAR', 'APR': 4, 'MAY': 5}
a.keys()
Out[2]: ['APR', 1, 2, 3, 'MAY']
任何人都可以帮助我理解为什么会这样。 keys() 在这里使用的顺序是什么?
python 中的字典使用散列作为键,并且不保存顺序。因此,您不能指望按键顺序 - 它在运行和调用期间可能会有所不同。 如果需要hashmap and保存顺序,应该使用ordered dict