私は既存のJsonファイルを更新しようとしていますが、何らかの理由で要求された値が変更されていませんが、新しい値を持つ値のセット全体が元のjsonファイルをPythonで更新する方法
jsonFile = open("replayScript.json", "r+")
data = json.load(jsonFile)
tmp = data["location"]
data["location"] = "NewPath"
jsonFile.write(json.dumps(data))
を提出し、その結果は次のとおりです。 必須:実際
{
"location": "NewPath",
"Id": "0",
"resultDir": "",
"resultFile": "",
"mode": "replay",
"className": "",
"method": "METHOD"
}
:
{
"location": "/home/karim/storm/project/storm/devqa/default.xml",
"Id": "0",
"resultDir": "",
"resultFile": "",
"mode": "replay",
"className": "",
"method": "METHOD"
}
{
"resultDir": "",
"location": "pathaaaaaaaaaaaaaaaaaaaaaaaaa",
"method": "METHOD",
"className": "",
"mode": "replay",
"Id": "0",
"resultFile": ""
}
'seek()'と 'truncate()'の使用について説明していただきありがとうございます。しかし、私は 'jsonFile.write(json.dumps(data))'を 'jsonFile.dump(data、f)'に変更することでこの答えを改善するだろう。より多くのpythonic。 – BoltzmannBrain