python 如何将字典写为json文件

  • Post category:Python

在Python中,可以使用json模块将字典转化为json格式的文件。下面是具体的步骤:

  1. 导入json模块
import json
  1. 创建一个字典用于演示
my_dict = {
    "name": "John",
    "age": 25,
    "city": "New York"
}
  1. 将字典转换为json格式
json_str = json.dumps(my_dict)

json.dumps方法将字典转化为json格式的字符串。

  1. 将json字符串写入文件
with open('my_dict.json', 'w') as f:
    f.write(json_str)

通过with open('my_dict.json', 'w') as f:打开文件,在json.dumps转换完成后将json格式的字符串写入文件。

上述为将字典直接转为JSON并存入文件的方法,如果想美化JSON文件,可以使用json模块的dump方法,并增加参数indent用于设置缩进,如下:

with open('my_dict.json', 'w') as f:
    json.dump(my_dict, f, indent=4)

另外,从JSON文件中读取字典对象的方法如下:

with open('my_dict.json', 'r') as f:
    my_dict = json.load(f)

json.load方法将json格式的文件读取为Python字典类型的对象。

示例1:

import json

car = {"make": "Ford", "model": "F150", "year": 2019}

json_str = json.dumps(car)
with open('car.json', 'w') as f:
    f.write(json_str)

示例2:

import json

person = {
    "name": {
        "first": "John",
        "last": "Doe"
    },
    "age": 25,
    "city": "New York"
}

with open('person.json', 'w') as f:
    json.dump(person, f, indent=4)

以上两个示例分别将字典对象保存为名为car.jsonperson.json的文件中。