Python JSON保存重复信息

Python JSON保存重复信息,python,json,Python,Json,我想使用Python更新JSON数据 import json with open('./gui-config.json','r+') as f: js=json.load(f) js['configs'][0]['password']='123' f.seek(0) json.dump(js,f) 这是我的测试JSON,名为“gui config.JSON”: 结束运行时,“gui config.json”是: “sDefault”:false,“localPo

我想使用Python更新JSON数据

import json
with open('./gui-config.json','r+') as f:
    js=json.load(f)
    js['configs'][0]['password']='123'
    f.seek(0)
    json.dump(js,f)
这是我的测试JSON,名为“gui config.JSON”:

结束运行时,“gui config.json”是:

“sDefault”:false,“localPort”:1080}
是重复信息。为什么会这样? 我可以在打开后立即完成此操作吗

import json
with open('./gui-config.json','r') as f:
    js=json.load(f)
    js['configs'][0]['password']='123'

with open('./gui-config.json','w') as f:
    js.dumps(js, f)

我认为这是一种更整洁、更容易遵循的方法。再次打开文件进行写入将清除现有内容(您不必担心,因为内存中已经有该文件的副本)

为什么不关闭该文件并再次打开以进行写入?通过寻求0并转储,我认为“整个”文件不会被覆盖。它只会从这个位置开始编写,但一旦变量“js”中的内容用完,文件的其余部分就会保持原样。“Python将JSON数据保存错误”。当您开始寻找正常问题时,您的调试会变得更好,而不是立即指责您使用的语言和平台。你真的认为一个稳定的Python版本会完全破坏JSON支持,我们都不会注意到,开发人员也不会修复它吗?你不需要在第一次打开文件时使用
r+
。它可能只是普通的可读模式。进行了更改。谢谢:)
{
  "localPort": 1080,
  "isDefault": false,
  "configs": [
    {
      "server_port": 8989,
      "method": "aes-256-cfb",
      "remarks": "",
      "password": "123",
      "server": "US.SSSERVER.PW"
    }
  ],
  "global": false,
  "enabled": true,
  "index": 0,
  "shareOverLan": false
 }
   sDefault": false,
   "localPort" : 1080
 }
import json
with open('./gui-config.json','r') as f:
    js=json.load(f)
    js['configs'][0]['password']='123'

with open('./gui-config.json','w') as f:
    js.dumps(js, f)