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

これは、Pythonでのdictの実装がハッシュマップまたはハッシュテーブルであり、要素を順番に格納しないためです。

OrderedDictを使用してこれを回避できます。

于 2013-01-14T00:52:38.237 に答える