3

我使用 Python 字典:

>>> a = {}
>>> a["w"] = {}
>>> a["a"] = {}
>>> a["s"] = {}
>>> a
{'a': {}, 's': {}, 'w': {}}

我需要:

>>> a
{'w': {}, 'a': {}, 's': {}}

我怎样才能得到我填写字典的顺序?

4

2 回答 2

17

http://docs.python.org/2/library/collections.html#collections.OrderedDict

OrderedDict 是一个 dict,它记住第一次插入键的顺序。如果新条目覆盖现有条目,则原始插入位置保持不变。删除条目并重新插入会将其移至末尾。

>>> import collections
>>> a = collections.OrderedDict()
>>> a['w'] = {}
>>> a['a'] = {}
>>> a['s'] = {}
>>> a
OrderedDict([('w', {}), ('a', {}), ('s', {})])
>>> dict(a)
{'a': {}, 's': {}, 'w': {}}
于 2013-06-14T09:08:08.077 回答
3

你应该使用OrderedDict而不是Dict.

http://docs.python.org/2/library/collections.html

于 2013-06-14T09:08:50.430 回答