"Amit Sethi" <amit.pureene...@gmail.com> wrote

Hi , I am trying to merge(I am not sure if that is the right term)
dictionaries like this

dict1 ={'a':4,'b':3,'v':7,'h':4}
dict2={'a':5,'v':4,'k':3}
dict3 would be {'a':[4,5],'b':[3,4],'v':[7,4],'k':[0,3],'h':[4,0]}

I don't know how "idiomatic" it is but I'd probably just go for a for loop

dict3 = {}
for key in set(dict1.keys()+dict2.keys()):    # get the unique keys
    dict3[key] = [dict1.get(key,0),dict2.get(key,0)]

I suspect that in Python 3 you could use the new dict notation to do it slightly more neatly.

HTH,


--
Alan Gauld
Author of the Learn to Program web site
http://www.alan-g.me.uk/

_______________________________________________
Tutor maillist  -  Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor

Reply via email to