Python では、キーと値のペアを保存するために辞書が使用されますが、従来、これらの辞書は順序付けされていませんでした。ただし、Python 3.7 の導入により、辞書は OrderedDicts と同様に動作する順序保持機能を獲得しました。
この機能により、整数インデックス (colors[0] など) を使用して辞書に直接インデックスを付ける機能が排除されます。を使用すると、辞書内の最初または n 番目のキーを取得するための代替アプローチが開かれます。
辞書内の最初のキーを取得するには、辞書キーをリストに変換し、最初の要素にアクセスします:
<code class="python">first_key = list(colors)[0]</code>
同様に、最初の値を取得するには、辞書の値をリストに変換し、最初の要素にアクセスします:
<code class="python">first_val = list(colors.values())[0]</code>
リストを作成したくない場合は、ヘルパー関数を使用して辞書キーを反復処理し、最初のキーを返すことができます:
<code class="python">def get_first_key(dictionary): for key in dictionary: return key raise IndexError</code>
この関数を使用すると、次のように最初のキーを取得できます。
<code class="python">first_key = get_first_key(colors)</code>
n 番目のキーを取得するには、修正されたバージョンを使用できます。 get_first_key 関数の:
<code class="python">def get_nth_key(dictionary, n=0): if n < 0: n += len(dictionary) for i, key in enumerate(dictionary.keys()): if i == n: return key raise IndexError("dictionary index out of range") </code>
この関数を使用すると、次のように n 番目のキーを取得できます:
<code class="python">first_key = get_nth_key(colors, n=1) # retrieve the second key</code>
これらのメソッドは辞書の反復処理に依存していることに注意してください。大規模な辞書の場合は非効率的です。
以上が順序を保持する Python 辞書からキーを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。