【问题标题】:Incorrectly overwriting JSON file错误地覆盖 JSON 文件
【发布时间】:2019-08-04 14:52:15
【问题描述】:

所以我有一个带有条目列表的小型 json 数据库,我尝试制作一个 python 程序,将新项目添加到条目列表然后覆盖内容,问题是,它用一堆空格填充第一行,使 Python 无法读取 JSON 文件。

{"entries":[ 

  ]
}
import  json
f=open('test.json',"r+")
data=json.load(f)
def addme(x):
    data["entries"].append({x:{
    "added":True
    }})
addme("jason")
f.truncate(0)
json.dump(data,f, indent=1)
f.close()

我希望它看起来像

{
 "entries": [
  {
   "jason": {
    "added": true
   }
  }
 ]
}

我得到了

                    { 
 "entries": [
  {
   "jason": {
    "added": true
   }
  }
 ]
}

我尝试删除 indent 参数,但没有奏效。 另一个有趣的事情是我不能复制带有空格和空格的文件的粘贴内容。

【问题讨论】:

  • @Anshu 错误地编辑了原始帖子并删除了{ 之前的空格,因此预期和实际之间的差异不再明显。
  • @faradee。对不起,伙计们犯了这样的错误....现在您的问题与您的方面相同。 cc trenton_m

标签: json python-3.x


【解决方案1】:

尝试以“r”模式打开 test.json,将所有数据加载到变量中,关闭文件并以“w+”模式再次打开它似乎对我有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-26
    • 2020-02-12
    • 1970-01-01
    相关资源
    最近更新 更多