2013-02-12 13 views
18

Pythonで2つのオブジェクトをマージする良い方法はありますか?組み込みのメソッドや基本的なライブラリ呼び出しのように?Pythonで2つのオブジェクトをマージする

は今、私はこれを持っているが、それは手動で行う必要はありません何かのように思える:

def add_obj(obj, add_obj): 

    for property in add_obj: 
     obj[property] = add_obj[property] 

注:「オブジェクト」とは、私は「辞書」を意味:obj = {}

+1

を。あなたは辞書を参照していますか? – Simon

+0

[1つの式で2つのPython辞書をマージするにはどうすればいいですか?](https://stackoverflow.com/questions/38987/how-to-merge-two-python-dictionaries-in-a-single-expression) – Rotareti

+1

タイトルが誤解を招くそれはする必要があります:* Python *で2つの辞書をマージします。 – Rotareti

答えて

37

objが辞書である場合は、そのupdate機能を使用します。すべてのオブジェクトは[]アクセサを持っていない

obj.update(add_obj) 
5

おおよそ

merged = dict() 
merged.update(obj) 
merged.update(add_obj) 

これは実際には辞書のためのものであることに注意してください。

objが既に辞書の場合は、明らかにobj.update(add_obj)を使用できます。

関連する問題