我有一个清单
myList=['a' , 'b', 'c','d']
和字典:
data={}
当我遍历列表并将其数据附加到字典中时:
for i in myList:
print i
data[i]={'name':"jack",'date': "2015-10-01"}
print data
我假设字典将按照代码的顺序排列,但是当我打印字典和i(从列表中)时: 列表=> 一个 b C d 字典=>
{'a': {'date':"2015-10-01",'name':"jack"}, 'c': {'date':"2015-10-01",'name':"jack"}, 'b': {'date':"2015-10-01",'name':"jack"}, 'd': {'date':"2015-10-01",'name':"jack"}}
我可以知道为什么结果会以无序的方式出现。我怎样才能使字典与列表的顺序相同。
答案 0 :(得分:2)
var svg = document.getElementById("svg");
var svgNS = svg.namespaceURI;
var e = document.createElementNS(svgNS, 'g');
e.setAttribute('id', 'container');
while(svg.firstChild) {
e.appendChild(svg.firstChild);
}
svg.appendChild(e);
没有保持秩序。您可以使用OrderedDict
中的collections
。来自docs:
返回一个dict子类的实例,支持通常的dict 方法。 OrderedDict是一个记住键的顺序的dict 最先插入。如果新条目覆盖现有条目,则 原始插入位置保持不变。删除条目和 重新插入它将把它移到最后。
对于你的情况:
dict