我对Python相当陌生。事实上,今天是我学习Python的第一天。我正在学习一本教程,还读到了有关字典的书。
但是我不知道字典内容的顺序是什么。
下面是我的代码:
dir = {'Z':1,'Y':3,'X':5,'V':7,'U':9,'T':2,'S':4,'R':6,'Q':8,'P':10};
print dir;以下是产出:
{'Q':8,'P':10,'S':4,'R':6,'U':9,'T':2,'V':7,'Y':3,'X':5,'Z':1}
有人能解释我是如何得到这个输出的,而不是它原来的列表吗?
P.S:很抱歉有个蹩脚的问题:(
发布于 2013-05-16 11:11:18
在使用Python文档时,他们将是您的朋友)
最好将字典看作一组无序的键:值对,并要求键是唯一的(在一个字典中)。
这意味着它们没有固定的顺序存储,因此没有固定的顺序打印出来!由于字典很可能是使用哈希表实现的,所以它们没有遵循的“顺序”。
如果您想要一个有序字典,collections.OrderedDict()可能是有用的。
发布于 2013-05-16 11:13:49
如果您阅读有关字典http://docs.python.org/2/tutorial/datastructures.html#dictionaries的python文档
你会发现这是正常的。如果您想要对其进行排序,您必须执行某种排序操作,否则这是一个任意的顺序。
希望能帮上忙。
https://stackoverflow.com/questions/16585859
复制相似问题