Python 3.6 以降では、辞書はキーと値のペアが宣言された順序を本質的に維持します。これは、次の辞書:
d = {'ac': 33, 'gw': 20, 'ap': 102, 'za': 321, 'bs': 10}
が反復処理または表示されるときに同じ順序で保持されることを意味します。この動作は、整数インデックスのスパース ハッシュ テーブルを使用して実装されます。整数は、追加の配列に格納されたキーと値のペアに対応します。後者の配列は挿入順序を保証します。
Python 3.7 では、この順序保持の性質が言語仕様となり、互換性のあるすべての実装は辞書内で宣言されたキーと値のペアの順序を遵守する必要があります。さらに、Python 3.8 では、辞書での逆反復のサポートが導入されました。
標準の dict 型は順序保持をサポートするようになりましたが、collections.OrderedDict() クラスの使用を検討することもできます。これは、可逆性 (オブジェクトの表示まで拡張) や move_to_end() メソッドを使用して項目を並べ替える機能などの追加機能を提供します。
以上がPython は辞書の挿入順序をどのように保持するのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。