Найти - Пользователи
Полная версия: Работа со словарями
Начало » Python для новичков » Работа со словарями
1
kodak38
есть список из словарей

{'cn': 1 ‘ce’: 1}
{'cn': 2, ‘ce’: 1}
{'cn': 2, ‘ce’: 2}
{'cn': 3, ‘ce’: 2}
Как составит новый словарь, чтобы это выглядело так к примеру {[ce:1,cn:],['ce':2,'cn':}
dimy44
Оформите пост как положено, сейчас пример как должно выглядеть- бессмысленен, хз что Вы хотите получить. И не “например”, а конкретно.
kodak38
Извините выглядело {{ce:1,cn:},{'ce':2,'cn':}}
kodak38
странно квадратные скобки затираются {{ce:1,cn:},{ce:2, cn:}}
kodak38
{{ce:1,cn:[1,2]},{ce:2, cn:[2,3]}}
py.user.next
>>> 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]}]
>>>
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB