如何从json文件中转储和加载多个python对象?

时间:2016-07-02 09:22:50

标签: python json

我想在json文件中存储几个变量。

我知道我可以像这样转储多个变量 -

import json
with open('data.json', 'w') as fp:
    json.dump(p_id,fp, sort_keys = True, indent = 4)
    json.dump(word_list, fp, sort_keys = True, indent = 4)
    .
    .
    .

但是这些变量的存储没有它们的名称,并且尝试加载它们会产生错误。如何妥善存储和提取我想要的变量?

1 个答案:

答案 0 :(得分:2)

您通常会将一个 JSON对象写入文件;该对象可以包含您的其他对象:

json_data = {
    'p_id': p_id,
    'word_list': word_list,
    # ...
}
with open('data.json', 'w') as fp:
    json.dump(json_data, fp, sort_keys=True, indent=4)

现在你所要做的就是读取一个对象并用相同的键解决这些值。

如果您必须编写多个JSON文档,请避免使用换行符,以便read the file line by line可以parsing the file one JSON object at a time更多参与。