Python 辞書にキーを追加および更新する方法
Python 辞書で要素を追加したり、キーと値のペアを更新したりする方法を学びます。角括弧、更新メソッド、結合演算子のオプションを調べます。
概要
ディクショナリ内の要素の追加と更新は、状態管理、データ処理、および構成更新における中心的な概念です。 Python ディクショナリは変更可能なコレクションであるため、構造全体を再作成しなくても、プログラムの実行中にキーと値を動的に簡単に変更できます。
キーと値のペアを追加する最も簡単な方法は、角かっこ割り当て構文 `my_dict[key] = value` を使用することです。キーが存在しない場合、Python はそのキーを辞書に追加します。キーがすでに存在する場合、Python はその古い値を新しい値で上書きします。
一括更新またはマージ操作のために、Python は別の辞書またはキーと値のペアの反復可能値を受け入れる `.update()` メソッドを提供します。さらに、Python 3.9+ では、マージユニオン演算子 `|` を使用して 2 つの辞書を新しい辞書にマージしたり、更新演算子 `|=` を使用して辞書をインプレースで更新したりできます。
コードと実行の出力
このスクリプトは、Python での辞書の追加、更新、および結合を示します。
profile = {"username": "sara", "level": 5}
# 1. Add new key-value pair using brackets
profile["verified"] = True
print("After adding key:", profile)
# 2. Update existing key using brackets
profile["level"] = 6
print("After updating key:", profile)
# 3. Add/Update multiple keys using update()
profile.update({"avatar": "cat.png", "level": 7})
print("After update():", profile)
# 4. Using the merge operator (Python 3.9+)
extra_info = {"location": "US"}
merged_profile = profile | extra_info
print("Merged profile:", merged_profile)After adding key: {'username': 'sara', 'level': 5, 'verified': True}
After updating key: {'username': 'sara', 'level': 6, 'verified': True}
After update(): {'username': 'sara', 'level': 7, 'verified': True, 'avatar': 'cat.png'}
Merged profile: {'username': 'sara', 'level': 7, 'verified': True, 'avatar': 'cat.png', 'location': 'US'}段階的な実装
- 括弧表記 my_dict['new_key'] = value を使用して、単一の新しい要素を挿入します。
- my_dict.update(new_dict) を呼び出して、複数のキーと値をその場でマージします。
- | を使用します。Python 3.9+ の Union 演算子を使用して、元の辞書を変更せずに辞書を結合します。
よくある質問
すでに存在するキーを追加するとどうなりますか?
そのキーに関連付けられた古い値は、新しい値によって暗黙的に上書きされます。
デフォルトのリスト値を持つキーが存在しない場合、キーを追加できますか?
はい! my_dict.setdefault(key, []) を使用するか、コレクション モジュールの defaultdict を使用して、デフォルト値の初期化を自動化できます。
関連トピック
推奨される Python リソース
関連するインタラクティブなチュートリアル、チートシート、コード比較で知識を深めてください。
Python ジェネレーター
Python ジェネレーターと yield ステートメントを使用して、最小限のメモリ フットプリントで巨大なデータセットを処理する方法を学びます。ジェネレーター式をマスターします。
Python 辞書メソッドのチートシート
Python の辞書メソッドを学習します。キーと値のペアの挿入、取得、更新、チェックに関する完全なリファレンス ガイド。
Python デコレータとデコレータ デザイン パターン: 主な違い
Python デコレータと従来のデコレータ デザイン パターンを比較します。定義時の関数ラッピングと、実行可能なコードを使用した実行時の動的オブジェクト構成の違いを理解します。