【发布时间】:2014-10-02 15:15:17
【问题描述】:
请注意,我试图不寻找像 question 这样的默认有序字典。相似的东西。
如果我从集合模块中调用 OrderedDict,我可以这样做 -
from collections import OrderedDict
my_ordered_dict = OrderedDict()
然后我可以设置像这样调用 setitem 函数的项目,我假设魔法发生了 -
my_ordered_dict[key1] = value1
my_ordered_dict[key2] = value2
my_ordered_dict[key3] = value3
得到一个完美的 OrderedDict -
>my_ordered_dict
{key1:value1, key2:value2, key3:value3...}
但是,当我尝试像这样初始化我的键值对时:
my_ordered_dict = {key1 : value1,
key2 : value2,
key3 : value3...}
字典失去了顺序。
我可以解决这个问题,而不是初始化一个元组列表:
default = [ (key1, value1), (key2, value2), (key3, value3)]
for pair in default:
my_ordered_dict[pair[0]] = pair[1]
但我好像错过了什么。有什么建议吗?
【问题讨论】:
标签: python python-2.7 dictionary