Python での辞書キーの名前変更
問題は、値を再割り当てしたり、辞書自体を反復処理したりせずに、辞書キーの名前を変更できるかということです。
通常の辞書:
通常の辞書の場合、名前変更は次のコードで実行できます:
<code class="python">mydict[k_new] = mydict.pop(k_old)</code>
このコードでは、 k_new がすでに存在しない限り、項目は辞書の最後に移動されます。その場合、その値は上書きされます。
Ordered Dictionary (Python 3.7 ):
OrderedDict の場合、順序を維持する必要があります。キーの名前を変更する最も簡単な方法は、目的のキー名で新しい辞書を作成することです:
<code class="python">{k_new if k == k_old else k:v for k, v in od.items()}</code>
順序付き辞書 (一般):
一般に、キーは不変で変更できないため、キー自体は実用的ではありません。したがって、解決策は、ジェネレータ式を使用して、目的のキー名を持つ新しい辞書を作成することです:
<code class="python">OrderedDict((k_new if k == k_old else k, v) for k, v in od.items())</code>
以上が値や反復を再割り当てせずに、Python で辞書キーの名前を変更する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。