i am having two dictionaries
first = {\'id\': 1, \'age\': 23} second = {\'id\': 4, \'out\': 100}
I want output dictionary as
{\'id\': 5, \
You want to use collections.Counter:
from collections import Counter
first = Counter({'id': 1, 'age': 23})
second = Counter({'id': 4, 'out': 100})
first_plus_second = first + second
print first_plus_second
Output:
Counter({'out': 100, 'age': 23, 'id': 5})
And if you need the result as a true dict
, just use dict(first_plus_second)
:
>>> print dict(first_plus_second)
{'age': 23, 'id': 5, 'out': 100}
You can simply update the 'id'
key afterwards:
result = dict(first.items() + second.items())
result['id'] = first['id'] + second['id']
If you want to add values from the second to the first, you can do it like this:
first = {'id': 1, 'age': 23}
second = {'id': 4, 'out': 100}
for k in second:
if k in first:
first[k] += second[k]
else:
first[k] = second[k]
print first
The above will output:
{'age': 23, 'id': 5, 'out': 100}