2016-06-16 11 views
0

辞書に新しいキーを追加はキーの順序:私は次のように辞書に要素を追加しようとしています

{'b': 1, 'a': 2} 

誰でも私にこれを説明できますか?実際に辞書(ハッシュマップ)に順序がないときにキーがアルファベット順にソートされるのはなぜですか?

+0

あなたは 'OrderedDict' –

+1

を使用する必要があります彼らはちょうどそれが表示されていますどのようにあることを起こることを、ソートされていません。それは恣意的です。 –

+0

辞書を反復すると、まず「a」が印刷され、次に「b」が印刷されます。私にこれを説明できますか? –

答えて

1

辞書は発注されていませんが、ハッシュされています。その結果、辞書の順序は信頼されるべきではありません。

あなたはあなたの目標を達成するのを助けるためにOrderedDictを使用することができます

from collections import OrderedDict 
a = OrderedDict() 
a['b'] = 1 
a['a'] = 2 

> a 
> OrderedDict([('b', 1), ('a', 2)]) 
関連する問題