[英]Write json into file Python 3
我正在嘗試將JSON數據寫入正在一行中寫入的文件,如下所示:
{"AbandonmentDate": "", "Abstract": "", "Name": "ABC"}{"AbandonmentDate": "", "Abstract": "", "Name": "ABC"}
我的代碼如下:
with open(file_name, 'w') as file:
for data in results:
saveData = {}
for k,v in data.items():
if v:
saveData[k] = v
else:
saveData[k] = ''
print (json.dumps(saveData))
file.write(json.dumps(saveData, ensure_ascii=False))
file.close()
我需要的是以下格式:
{"AbandonmentDate": "", "Abstract": "", "Name": "ABC"}
{"AbandonmentDate": "", "Abstract": "", "Name": "ABC"}
我從StackOverflow的各種答案中嘗試了幾種方法,但是,我無法獲得它? 有什么辦法嗎?
使用json_dump
:
j_data = {"AbandonmentDate": "", "Abstract": "", "Name": "ABC"},{"AbandonmentDate": "", "Abstract": "", "Name": "ABC"}
import json
with open('j_data_file.json', 'w') as outfile:
json.dump(j_data, outfile,indent=4)
輸出 :
[
{
"AbandonmentDate": "",
"Abstract": "",
"Name": "ABC"
},
{
"AbandonmentDate": "",
"Abstract": "",
"Name": "ABC"
}
]
編輯 :
如果您確實希望將元素打印在新行上,請遍歷數據:
j_data = {"AbandonmentDate": "", "Abstract": "", "Name": "ABC"},{"AbandonmentDate": "", "Abstract": "", "Name": "ABC"}
import json
with open('j_data_file.json', 'w') as outfile:
for elem in j_data:
json.dump(elem, outfile)
outfile.write('\n')
輸出 :
{"AbandonmentDate": "", "Abstract": "", "Name": "ABC"}
{"AbandonmentDate": "", "Abstract": "", "Name": "ABC"}
假設您的json像這樣:
yourjson = [
{"AbandonmentDate": "", "Abstract": "", "Name": "ABC"},
{"AbandonmentDate": "", "Abstract": "", "Name": "ABC"}
]
那么您只需要這樣做:
with open("outfile.txt", "w") as pf:
for obj in yourjson:
pf.write(json.dumps(obj) + "\n")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.