1

我有一个 Python 函数的一部分,如下所示:

for item in passedList:
    tempDict = {}
    tempDict ["first"] = item[0]
    tempDict ["second"] = item[1]
    tempDict ["third"] = item[2]

我期待回来的是:

{'first': 'item1', 'second': 'item2', 'third': 'item3'}

但是,我得到:

{'second': 'item2', 'first': 'item1', 'third': 'item3'}

这可能是一个非常简单的疏忽,但对为什么会发生这种情况有任何想法吗?

4

1 回答 1

6

这是因为dict在 Python 中的实现是一个 hashmap 或 hash table,它不会按顺序存储元素。

您可以使用OrderedDict来解决这个问题。

于 2013-01-14T00:52:38.237 回答