字典没有任何顺序感,因此您的键/值对不以任何格式排序。
如果你想保留键的顺序,你应该使用collections.OrderedDict https://docs.python.org/2/library/collections.html#collections.OrderedDict从一开始,就不使用普通的字典,示例 -
>>> from collections import OrderedDict
>>> d = OrderedDict([('a',1),('b',2),('c',3)])
>>> d
OrderedDict([('a', 1), ('b', 2), ('c', 3)])
OrderedDict 将保留键输入字典的顺序。在上面的情况下,这将是键在列表中存在的顺序 -[('a',1),('b',2),('c',3)]
- 'a' -> 'b' -> 'c'
然后你可以使用相反的顺序获得键reversed(d)
, 例子 -
>>> dreversed = OrderedDict()
>>> for k in reversed(d):
... dreversed[k] = d[k]
...
>>> dreversed
OrderedDict([('c', 3), ('b', 2), ('a', 1)])