join list of dicts python code example
Example 1: how to merge a list of dictionaries in python
from collections import defaultdict
dict_list = {
1: [{
"x": "test_1",
"y": 1
},
{
"x": "test_2",
"y": 1
}, {
"x": "test_1",
"y": 2
}
],
}
print(dict_list)
data = dict()
for key, value in dict_list.items():
tmp = defaultdict(int)
for index, item in enumerate(value):
tmp[item.get("x") ] += item.get("y")
for tmp_key, tmp_value in tmp.items():
data.setdefault(key, []).append(
{
"x": tmp_key,
"y": tmp_value
}
)
print(data)
Example 2: merged all dictionaries in a list python
>>> result = {}
>>> for d in L:
... result.update(d)
...
>>> result
{'a':1,'c':1,'b':2,'d':2}
Example 3: python join dict
def mergeDict(dict1, dict2):
''' Merge dictionaries and keep values of common keys in list'''
dict3 = {**dict1, **dict2}
for key, value in dict3.items():
if key in dict1 and key in dict2:
dict3[key] = [value , dict1[key]]
return dict3
dict3 = mergeDict(dict1, dict2)
print('Dictionary 3 :')
print(dict3)