我想把下面的数据转换成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'}
但这会扰乱现有的数据显示顺序,而不是全部显示出来。你知道吗
我是从一个外部程序中捕获这些数据的,因此仅限于python2.7版。任何想法都会非常有用!你知道吗
我将使用
setdefault
在您的组中创建新列表。这将适用于多组的情况下,你有组B,C,D。。。你知道吗您应该在数据中找到模式:
利用这些观察,你可以写下:
相关问题 更多 >
编程相关推荐