我正在尝试将xml转换为JSON(下面提供了压缩版本的代码)。在
我面临的问题是一个标签,它可以有多个值(下面的例子)。我不能直接将它作为dict,因为键(NAME)可以有多个值。下面给出了代码生成的输出与预期输出的比较。在
python脚本:
import json
mylist = ['"Event" : "BATCHS01-wbstp01"', '"Event" : "BATCHS01-wbstrt01"']
tmpdict = {}
tmpdict['Events'] = mylist
with open('test.json','w') as fp:
json.dump(tmpdict,fp,indent=4, sort_keys=False)
生成的输出:
^{pr2}$预期输出:
{
"Events": [
{"Event" : "BATCHS01-wbstp01"},
{"Event" : "BATCHS01-wbstrt01"}
]
}
代码:
您可以先将XML片段转换为dict,如下所示:
测试代码:
^{pr2}$结果:
您可以先将数据逐段转换为有效的JSON,然后将JSON转储到字符串或文件中,从而挽救数据:
问题是您的
mylist
是一个字符串数组,而不是一个映射对象数组。 您需要删除外部报价以使其:我不明白为什么不能从XML生成这种结构。不管“key(NAME)是否可以有多个值”,这都相当简单。在
相关问题 更多 >
编程相关推荐