一致するキーによる辞書の結合: チュートリアル
Python では、一致するキーに関連付けられた値を組み合わせて辞書を結合するのが一般的なタスクです。この目標を効率的に達成する方法を検討してみましょう。
問題ステートメント
次のようなキーと値のペアを持つ複数の辞書が与えられているとします。
d1 = {key1: x1, key2: y1} d2 = {key1: x2, key2: y2}
目的は、各キーが入力辞書からの対応する値のタプルを持つ新しい辞書を作成することです。たとえば、望ましい結果は次のようになります。
d = {key1: (x1, x2), key2: (y1, y2)}
解決策:defaultdict を利用する
一致するキーから値を収集しながら辞書をマージする効率的なアプローチの 1 つは、コレクションモジュールのdefaultdictクラス。以下に段階的なデモを示します。
コード実装
from collections import defaultdict d1 = {1: 2, 3: 4} d2 = {1: 6, 3: 7} dd = defaultdict(list) for d in (d1, d2): for key, value in d.items(): dd[key].append(value) print(dd) # defaultdict(<type 'list'>, {1: [2, 6], 3: [4, 7]})
これらの手順に従うことで、一致するキーを持つ辞書を効果的に結合し、それらに関連付けられた値を組み合わせることができます新しい辞書に。
以上がキーが一致する Python 辞書を値のタプルに効率的にマージするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。