在Python
中,我试着拿一个XML
文件,处理它,然后输出数据到JSON
。 XML处理工作正常,但我无法正确格式化JSON。输出文件看起来更像是一个内含字典的列表,这很有意义,因为代码实际上是这样做的。我怎样才能使这个正确的JSON文件?将JSON写入文件 - 格式错误?
filename = 'data.json'
d = []
for elem in ET.fromstring(data).findall('.//table/row'):
field1 = elem.get('field1')
field2 = elem.get('field2')
field3 = elem.get('field3')
field4 = elem.get('field4')
l = {'field1' : field1,
'field2' : field2,
'field3' : field3,
'field4' : field4}
d.append(l)
f_out = open(filename, 'w')
json.dump(d, f_out)
f_out.close()
输出文件看起来是这样的:
[{"field1": "field1", "field2": "field2", "field3": "field3", "field4": "field4"}, ... {"field1": "field1", "field2": "field2", "field3": "field3", "field4": "field4"}]
当我希望它看起来像:
{"field1": "field1", "field2": "field2", "field3": "field3", "field4": "field4"}, ... {"field1": "field1", "field2": "field2", "field3": "field3", "field4": "field4"}
当你那样json.dump尝试添加缩进 – glls
您的代码看起来不错。我怀疑输出是一个“正确的JSON文件”。请显示你从这个程序中得到的输出,以及你期望的输出。 –
您正在编写'd',它是一个列表,用JSON表示为'[item1,item2,item3]'。 –