Python の辞書に辞書を追加する
-
Python で
update()
メソッドを使用して辞書を別の辞書に追加する -
Python で辞書アンパック演算子
**
を使用して辞書を別の辞書に追加する -
Python で
|
演算子を使用して辞書を別の辞書に追加する -
Python で
collections.ChainMap
コンテナを使用して辞書を別の辞書に追加する
![Python の辞書に辞書を追加する](/img/Python/feature-image---add-dictionary-to-a-dictionary-python.webp)
Python の辞書は、キーと値のペアの形式で要素のグループを構成します。これは、順序付けられていない変更可能なコレクションです。
このチュートリアルでは、Python で辞書を別の辞書に追加するさまざまな方法について説明します。
Python で update()
メソッドを使用して辞書を別の辞書に追加する
update()
メソッドは、ある辞書を別の辞書に連結します。この方法を使用すると、一方の辞書のキーと値のペアをもう一方の辞書に挿入できます。
例えば、
D1 = {"loginID": "xyz", "country": "USA"}
D2 = {"firstname": "justin", "lastname": "lambert"}
D1.update(D2)
print(D1)
出力:
{'loginID': 'xyz', 'country': 'USA', 'firstname': 'justin', 'lastname': 'lambert'}
上記のコードでは、update()
メソッドを使用して辞書 D1
と D2
を連結しています。
このメソッドでは、最初のディクショナリが 2 番目のディクショナリの値で更新されることに注意してください。この例では、D1 が更新されました。
Python で辞書アンパック演算子**
を使用して辞書を別の辞書に追加する
Python で 2つの辞書を追加し、辞書の解凍演算子**
を使用してそれらの組み合わせを 3 番目の辞書に格納できます。このメソッドは、元の辞書のキーと値のペアを変更しません。
この演算子は Python 3.5 から機能します。
例えば、
def merge(D1, D2):
py = {**D1, **D2}
return py
D1 = {"loginID": "xyz", "country": "USA"}
D2 = {"firstname": "justin", "lastname": "lambert"}
D3 = merge(D1, D2)
print(D3)
出力:
{'loginID': 'xyz', 'country': 'USA', 'firstname': 'justin', 'lastname': 'lambert'}
上記のコードでは、Python で**
を使用して、最初の辞書 D1
と 2 番目の辞書 D2
を別の 3 番目の辞書 D3
に追加しました。
Python で|
演算子を使用して辞書を別の辞書に追加する
この演算子は、Python の最新アップデート(Python 3.9)で使用できます。これは、2つの辞書をマージするための簡単で便利な方法です。
次のコードスニペットでは、|
を使用していますオペレーター。
# >= Python 3.9
def Merge(D1, D2):
py = D1 | D2
return py
D1 = {"RollNo": "10", "Age": "18"}
D2 = {"Marks": "90", "Grade": "A"}
D3 = Merge(D1, D2)
print(D3)
出力:
{'RollNo': '10', 'Age':'18' ,'Marks': '90', 'Grade': 'A'}
Python で collections.ChainMap
コンテナを使用して辞書を別の辞書に追加する
ChainMap
は、多くの辞書を 1つのユニットにマッピングするために使用されます。コレクションモジュールからインポートする必要があります。
ChainMap()
コンストラクターを使用して、ChainMap
コンテナーを作成し、結合する辞書を引数のセットとして渡します。
次のコードを参照してください。
from collections import ChainMap
D1 = {"w": 1, "x": 2}
D2 = {"y": 3, "z": 4}
D3 = ChainMap(D1, D2)
D3 = {k: v for d in (D1, D2) for (k, v) in d.items()}
print(D3)
出力:
{'w': 1, 'x': 2, 'y': 3, 'z': 4}
このメソッドは Python 2.7 以降で機能します。