Вы можете выполнять итерации по диктовкам и использовать dict.setdefault
, чтобы установить значение по умолчанию как пустой список, если ключ отсутствует, и добавить к списку в противном случае:
for dct in Array:
for k, v in dct.items():
out.setdefault(k, []).append(v)
out
- желаемый результат dict
.
Пример:
In [1208]: arr = [ {'Example1': {'Time Taken': 56, 'Type': 'Quiz'} }, {'Example1': {'Time Taken': 58, 'Type': 'Exam'} }, {'Example2': {'Time Taken': 40, 'Type': 'Quiz'} } ]
In [1209]: out = {}
In [1210]: for dct in arr:
...: for k, v in dct.items():
...: out.setdefault(k, []).append(v)
...:
In [1211]: out
Out[1211]:
{'Example1': [{'Time Taken': 56, 'Type': 'Quiz'},
{'Time Taken': 58, 'Type': 'Exam'}],
'Example2': [{'Time Taken': 40, 'Type': 'Quiz'}]}