如何将项目添加到存储在JSON文件中的列表中

时间:2019-10-21 14:50:07

标签: python json python-3.x list dictionary

我想将字典添加到JSON文件中的列表中。

reading = []
reading["game_review"] = {
    "name" : your_name,
    "time" : round(time_result, 2),
    "level" : level+1
}

with open("stat.json", "a") as stats:
    json.dump(reading, stats)

每次运行代码时,都会在JSON文件中创建另一个字典并将其放置在我已有的字典旁边,我希望它将自身添加到字典内的列表中。

编辑:

with open("stat.json", "r") as stat_read:
        reading = json.loads(stat_read.read())
    reading["game_review"] = {
        "name" : your_name,
        "time" : round(time_result, 2),
        "level" : level+1
    }

    with open("stat.json", "a") as stats:
        json.dump(reading, stats)

1 个答案:

答案 0 :(得分:2)

如果要这样做,请读取该文件,解析JSON内容,然后将JSON附加到列表中。然后重新写入文件。 假设JSON文件具有以下内容

{'a':['b','c'],'d':'e'}

然后您可以执行以下操作

with open("data.json") as jfile:
   current_data=json.load(jfile)
current_data['a'].append('f')
with open("data.json","w") as jfile:
   json.dump(current_data,jfile)

文件中的最终内容将为

{'a':['b','c','f'],'d':'e'}