I want to combine all the dictionaries in the dictionary, ignoring the main dictionary keys and summing up the meaning of other dictionaries by value.
Input:
{'first':{'a': 5}, 'second':{'a': 10}, 'third':{'b': 5, 'c': 1}}
Conclusion:
{'a': 15, 'b': 5, 'c': 1}
I did:
def merge_dicts(large_dictionary):
result = {}
for name, dictionary in large_dictionary.items():
for key, value in dictionary.items():
if key not in result:
result[key] = value
else:
result[key] += value
return result
Which works, but I don’t think this is such a good way (or less "pythonic").
By the way, I do not like the title that I wrote. If anyone thinks of a better wording, edit it.
source
share