【发布时间】:2013-10-01 08:28:11
【问题描述】:
所以,我是一名正在尝试学习 python 的 php 程序员。我有一个我想要排序的字典。我把它们变成了 OrderedDict。他们完美地排序, 原始字典看起来像这样。这只是一个 3 维数组吧?
a["01/01/2001"]["un"]=1
a["01/01/2001"]["nn"]=1
a["01/02/2001"]["aa"]=2
a["01/02/2001"]["bb"]=2
a["01/03/2001"]["zz"]=3
a["01/03/2001"]["rr"]=3
我可以将它们转换为 OrderedDict,并希望以以下格式呈现它们
"01/01/2001" un=1 nn=1
"01/02/2001" aa=2 bb=2
"01/03/2001" zz=3 rr=3
我可以在 php 中编写一个简单的循环来遍历这个关联数组,但我不知道如何在 python 中执行它。有人可以帮忙吗?
【问题讨论】:
-
OrderedDict 并不意味着“排序的字典”。这意味着“保留将项目插入到字典中的顺序”,因此只有在您按排序顺序插入它们时才会对它们进行排序。要始终按排序键顺序获取 dict,请使用
for key,value in sorted(dictvar.iteritems()):,并且不需要 OrderedDict 的开销即可执行此操作。 -
感谢您的建议。那么,我该如何根据日期对上述字典 a 的字典进行排序,并以上述格式显示它们?我对python很陌生,很困惑
标签: python python-2.7 ordereddictionary