【发布时间】:2012-05-29 02:47:12
【问题描述】:
我试图回答这个非常奇怪的 Python 问题(在 SO 但看起来作者删除了它)。这让我大吃一惊,我似乎无法合理地解释自己是什么原因导致了这种令人困惑的现象。 我有一个 Python 字典(关联数组),初始化如下。
d = {"word1": 1, "word2": 2, "word3": 3}
并使用 for..in 构造循环遍历它,在该构造中我打印由空格分隔的“d”键。
预期输出:word1 word2 word3
实际输出:word1 word3 word2
然后我尝试将“d”打印为
打印 d
输出
{'word1': 1, 'word3': 3, 'word2': 2}
我正在扫描在线 Python 文档、SO 上的现有调查问卷、博客,但完全无法找出原因。我在这里错过了什么吗?此外,请所有对此问题投反对票的人详细说明原因。
干杯。 :-)
【问题讨论】:
-
-1。详细说明:您围绕主题跳舞,但您从不说预期输出与实际输出有什么问题。问题在于顺序。 Google 或在 stackoverflow 中搜索“python”、“order”、“dictionary”,很快就能找到答案。
-
@StevenRumbalski:谢谢。我是个笨蛋:(
-
我投票结束这个问题作为一个完全重复的问题。非常感谢所有愿意在这里发帖/评论的人。 :)