Python - 順序付き辞書

Pythonの辞書型データは、キーと値をセットで管理でき記述方法も簡潔なのでとても便利なのですが、順序が保障されないため順番に管理したい場合に困ることがあります。

OrderedDictを使うと順序付きの辞書型としてデータを扱うことができます。

コード

OrderedDictを使うためには、まずimport文を記述する必要があります。
(ここが一般的な辞書型を使うよりも手間に感じます。)

1
2
3
4
5
6
7
8
9
10
from collections import OrderedDict

dict = OrderedDict()

dict['key1'] = 'value1'
dict['key2'] = 'value2'
dict['key3'] = 'value3'
dict['key4'] = 'value4'

print(dict)

実行結果

実行結果は次のようになります。

OrderedDict([('key1', 'value1'), ('key2', 'value2'), ('key3', 'value3'), ('key4', 'value4')])

辞書に追加した順でデータが並んでいることが分かります。

私が辞書型データを使う場合には、順番を考慮することが多いのでこのOrderedDictを標準の辞書型データとして欲しいくらいです。