我有以下代码将写入 JSON 文件:
import json
def write_data_to_table(word, hash):
data = {word: hash}
with open("rainbow_table\\rainbow.json", "a+") as table:
table.write(json.dumps(data))
我想要做的是打开 JSON 文件,向其中添加另一行,然后关闭它。如何在不弄乱文件的情况下执行此操作?
截至目前,当我运行代码时,我得到以下信息:
write_data_to_table("test1", "0123456789")
write_data_to_table("test2", "00123456789")
write_data_to_table("test3", "000123456789")
#<= {"test1": "0123456789"}{"test2": "00123456789"}{"test3": "000123456789"}
如何在不完全搞砸的情况下更新文件?
我的预期输出可能是这样的:
{
"test1": "0123456789",
"test2": "00123456789",
"test3": "000123456789",
}
最佳答案
您可以使用以下方式读取 JSON 数据:
parsed_json = json.loads(json_string)
您现在可以操作一本经典词典。您可以添加数据:
parsed_json.update({'test4': 0000123456789})
然后您可以使用以下方式将数据写入文件:
with open('data.txt', 'w') as outfile:
json.dump(parsed_json, outfile)
关于python - 写入 JSON 文件并更新所述文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40108274/