このデータ構造の名前が示すように、各キーと値のペアが追加される順序を記録します。
出力:
初期化中に複数のパラメーターが同時に渡された場合、それらの順序はランダムになり、位置順に保存されません。
通常の dict と同じメソッドに加えて、OrderedDict は順序関連の操作も提供します: + Popitem(): Popitem(last=False) が最初に挿入されたキーと値のペアを返す場合、最後に挿入されたキーと値のペアを返します。 reversed: OrderedDict を逆の順序で返します
例
実際、OrderedDict は辞書のサブクラスとみなすことができます:
通常の辞書は挿入順序を追跡せず、反復処理はキーがハッシュテーブルに格納されている順序に基づいて値を生成します。 OrderDict ではその逆が当てはまり、要素が挿入された順序を記憶し、イテレータの作成時にこの順序を使用します。
通常の dict は等価性をチェックするときにその内容を調べますが、OrderDict は要素が追加される順序も考慮します。