Python内置的json 模块提供了一种非常完善的Python对象到JSON格式的转换。 其中 json.dumps() 和 json.loads() , 要比其他序列化函数库如pickle的接口少得多。
将一个Python数据结构转换为JSON(序列化)(dumps()
方法返回一个str
):
import json
data = {
'name' : 'Bob',
'age' : 20,
'score' : 99
}
json_str = json.dumps(data)#输出为字符串
将一个JSON格式的字符串进行反序列化:
data = json.loads(json_str)
如果处理的是文件而不是字符串,可以使用 json.dump() 和 json.load() 来编码和解码JSON数据。例如:
# 写入文件
with open('data.json', 'w') as f:
json.dump(data, f)
# 读取json文件
with open('data.json', 'r') as f:
data = json.load(f)
dumps()
方法可选参数:https://docs.python.org/3/library/json.html#json.dumps