您根本没有保存更改的数据。您必须先加载,然后修改,然后再保存。无法就地修改JSON文件。
with open('my_file.json', 'r') as f: json_data = json.load(f) json_data['b'] = "9"with open('my_file.json', 'w') as f: f.write(json.dumps(json_data))您也可以这样做:
with open('my_file.json', 'r+') as f: json_data = json.load(f) json_data['b'] = "9" f.seek(0) f.write(json.dumps(json_data)) f.truncate()如果要确保安全,请首先将新数据写入同一文件夹中的临时文件,然后将该临时文件重命名为原始文件。这样,即使之间发生任何事情,您也不会丢失任何数据。
如果您想到这一点,JSON数据就地更改非常困难,因为数据长度不是固定的,并且更改可能非常重要。



