Я пытаюсь преобразовать следующий фрагмент данных в dict, чтобы у меня была пара ключ: значение и чтобы они были вложенными:
data="Group A\n name : rey\n age : 6\n status : active\n in role : 201\n weight : 25\n interests\n Out Side : 16016\n In Side : 0\n Out : 2804\n\n name : dan\n age : 5\n status : inactive\n in role : 201\n weight : 18\n interests\n Out Side : 16016\n In Side : 0\n Out : 2804\n\n"
Проблема в том, что не все из них имеют :
и некоторые из них должны быть сгруппированы (то есть часть Group A
).\n
разрыв строки определенно помогает мне их разделить.
Вот результат, который я надеюсь получить:
[
{
"Group A":
[
{"name": "rey", "age": "6", "status": "active"},
{"name": "dan", "age": "5", "status": "inactive"}
]
}
]
Что у меня сейчас?Я разделил некоторые из них на dict
с помощью:
result = {}
for row in data.split('\n'):
if ':' in row:
key, value = row.split(':')
result[key] = value.strip()
Это выводит меня:
{' name ': 'dan', ' weight ': '18', ' In Side ': '0', ' Out ': '2804', ' in role ': '201', ' status ': 'inactive', ' Out Side ': '16016', ' age ': '5'}
Но это портит существующий порядок, в котором данные показаны выше- и не все вышло.
Я вроде как собираю эти данные из внешней программы и поэтому ограничен только Python версии 2.7.Любые идеи будут очень полезны!