2013-02-12 62 views
18

में दो ऑब्जेक्ट मर्ज करें क्या पाइथन में दो ऑब्जेक्ट्स मर्ज करने का कोई अच्छा तरीका है? एक अंतर्निहित विधि या मौलिक पुस्तकालय कॉल की तरह?पायथन

अभी मैं इस किया है, लेकिन यह कुछ मैन्युअल रूप से किया जा करने के लिए नहीं होना चाहिए कि की तरह लगता है:

def add_obj(obj, add_obj): 

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

नोट: "वस्तु", मैं एक "शब्दकोश" मतलब: obj = {}

+1

सभी वस्तुओं [] एक्सेसर जरूरत नहीं है। क्या आप उपन्यासों का जिक्र कर रहे हैं? – Simon

+0

संभावित डुप्लिकेट [एक अभिव्यक्ति में दो पायथन शब्दकोश कैसे विलय करें?] (Https://stackoverflow.com/questions/38987/how-to-merge-two-python-dples-in-a-single-expression) – Rotareti

+1

शीर्षक भ्रामक है। यह होना चाहिए: * पायथन * में दो शब्दकोश मर्ज करें। – Rotareti

उत्तर

37

हैं obj एक शब्दकोश है, इसका update समारोह का उपयोग करें:

obj.update(add_obj) 
5

कैसे

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

ध्यान दें कि यह वास्तव में शब्दकोशों के लिए है।

यदि obj पहले से ही एक शब्दकोश है, तो आप स्पष्ट रूप से obj.update(add_obj) का उपयोग कर सकते हैं।