Преобразовать список с вложенными словарями в JSON
Имеется следующая запись:
r = [{'aa': '"yes": 51', 'ab': '"no": 22',
'bb': '"yes": 56', 'ba': '"no": 60'},
{'aa': '"yes": 39', 'ab': '"no": 10',
'bb': '"yes": 59', 'ba': '"no": 30'},
{'aa': '"yes": 30', 'ab': '"no": 31',
'bb': '"yes": 54', 'ba': '"no": 73'}]
необходимо преобразовать в JSON типа:
[
[
{
"yes": 51,
"no": 22
},
{
"yes": 22,
"no": 60
}
],
[
{
"yes": 39,
"no": 10
},
{
"yes": 59,
"no": 30
}
],
[
{
"yes": 30,
"no": 31
},
{
"yes": 54,
"no": 73
}
]
]
К сожалению сам одолеть не смог =(
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Вот вам заготовка для разбора.
from ast import literal_eval
ll = []
for d in r:
for v in d.values():
x,y = v.split(':')
ll.append({literal_eval(x): int(y)})
В результате получается такой список:
[{'yes': 51},
{'no': 22},
{'yes': 56},
{'no': 60},
{'yes': 39},
{'no': 10},
{'yes': 59},
{'no': 30},
{'yes': 30},
{'no': 31},
{'yes': 54},
{'no': 73}]
Осталось только в JSON это собственно разместить попарно, пока мне лень дальше разбираться.