есть список из словарей
{'cn': 1 ‘ce’: 1}
{'cn': 2, ‘ce’: 1}
{'cn': 2, ‘ce’: 2}
{'cn': 3, ‘ce’: 2}
Как составит новый словарь, чтобы это выглядело так к примеру {[ce:1,cn:],['ce':2,'cn':}
{{ce:1,cn:[1,2]},{ce:2, cn:[2,3]}}
>>> import itertools >>> >>> lst = [{'cn': 1, 'ce': 1}, ... {'cn': 2, 'ce': 1}, ... {'cn': 2, 'ce': 2}, ... {'cn': 3, 'ce': 2}] >>> >>> out = [] >>> >>> grp = itertools.groupby(lst, lambda i: i['ce']) >>> for i, it in grp: ... num_lst = sorted(d['cn'] for d in it) ... out.append({'ce': i, 'cn': num_lst}) ... >>> print(out) [{'ce': 1, 'cn': [1, 2]}, {'ce': 2, 'cn': [2, 3]}] >>>