保存数据时保留新行

时间:2016-01-08 18:37:45

标签: python json

当我尝试将这个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))

1 个答案:

答案 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)