Из строки в список словарей
Вопрос крайне извращенный.
Как из строки вроде: 'left1-right1,left2-right2,left3-right3,...'
сделать список словарей:
[{
'key1': 'left1',
'key2': 'right1'
},
{
'key1': 'left2',
'key2': 'right2'
},
{
'key1': 'left3',
'key2':'right3'
},
...]
Ответы (1 шт):
Автор решения: entithat
→ Ссылка
Выглядит запутано, но... Сначала делим по запятой, потом по дефису и в итоге записывает в словарь сразу.
s = 'left1-right1,left2-right2,left3-right3'
print([dict([(f'key{ind + 1}', e) for ind , e in enumerate(i.split('-'))]) for i in s.split(',')])
Вывод:
[{'key1': 'left1', 'key2': 'right1'}, {'key1': 'left2', 'key2': 'right2'}, {'key1': 'left3', 'key2': 'right3'}]