当我尝试将这个json数据[1]保存到文件中时,python不会保留json数据的新行。我想保留它。我是怎么做到的?
[1]保存数据的代码
data = {
"queuecapacity": "0.0",
"maps": "9",
"byteswritten": "44089526",
"time": "52.5484039783",
"mem": 49222464,
"bytesread": "1102253727",
"cpu": 32000
}
with open(path, 'w') as out_file:
out_file.write(json.dumps(data))
答案 0 :(得分:7)
将缩进选项传递给json.dumps()
out_file.write(json.dumps(data, indent=4))
来自https://docs.python.org/2/library/json.html#json.dump,
如果indent是一个非负整数,那么JSON数组元素和对象成员将使用该缩进级别进行漂亮打印。缩进级别为0或负数只会插入换行符。无(默认值)选择最紧凑的表示。
此外,如果您已拥有文件对象
,则可以使用json.dump()
重写您的呼叫
json.dump(data, out_file, indent=4)