Python Json转储删除"&引用;

Python Json转储删除"&引用;,python,python-3.x,Python,Python 3.x,我正试图通过在Python3.X中使用json.dump在文件中编写json 代码如下: #write in a file with open('./mydata/dataleaf.json','w') as outfile: json.dump(leafdata["data"],outfile) 在我的文件中,输出是: ["{\"Extracts\":[],\"NextPageUrl\":\"\",\"PageCount\":0}", "{\"Extracts\":[],\"Next

我正试图通过在Python3.X中使用json.dump在文件中编写json

代码如下:

#write in a file
with open('./mydata/dataleaf.json','w') as outfile:
    json.dump(leafdata["data"],outfile)
在我的文件中,输出是:

["{\"Extracts\":[],\"NextPageUrl\":\"\",\"PageCount\":0}", "{\"Extracts\":[],\"NextPageUrl\":\"\",\"PageCount\":0}"]
我想得到的是:

['{"Extracts":[],"NextPageUrl":"","PageCount":0}',
 '{"Extracts":[],"NextPageUrl":"","PageCount":0}']
我尝试了Eval(),但仍然无法工作,因为我正在尝试将字符串列表保存到文件中(而不是单个字符串)()
. 提前感谢

似乎
leafdata[“data”]
是一个只包含一个json序列化数据的列表。试试这个:

with open('./mydata/dataleaf.json','w') as outfile:
    outfile.write(leafdata["data"][0])
要直接将内容写入文件,或在写入内容之前需要修改内容,请执行以下操作:

with open('./mydata/dataleaf.json','w') as outfile:
    python_data = json.loads(leafdata["data"][0])
    # [...] do something with "python_data"
    json.dump(python_data, outfile)

您可能正在读取一个字符串,并将该字符串作为JSON列表的唯一成员转储。如果字符串是JSON,如果您想处理它,您需要将其解析回Python,如果不是,只需再次打印出来,因为它已经是JSON格式。在伪代码中,您基本上是在
print(JSON.dumps(JSON.dumps(data))
您想要打印的地方执行
print(JSON.dumps(data))
或者可能只是
print(data)
当我使用open('./mydata/dataleaf.json',w')作为outfile:outfile.write(leafdata[“data”])尝试此操作时,出现以下错误:TypeError:write()参数必须是str,而不是list看起来像
leafdata[“data”][0]
将是本文的重点,但显然,我们只能推测这是否适用于更一般的情况,而无需更多关于数据来源的信息。