Python json模块,json与字典类型相互转换。json.dumps,json.loads;json.dump,json.load

 

Python json模块,json与字典类型相互转换。json.dumps,json.loads;json.dump,json.load

demo.py(json.dumps,json.loads):

# coding=utf-8
import json
from pprint import pprint   # 格式化打印

json_dict = {"name":"张三", "age":18}
# 将字典转换成json字符串
json_str = json.dumps(json_dict, ensure_ascii=False, indent=4)  # ensure_ascii取消默认的ascii编码,使用utf-8编码; indent缩进(4个空格的缩进,格式化)

# 将json字符串转化为字典类型
ret1 = json.loads(json_str)
pprint(ret1)   # prety print  美化打印,格式化打印
print(type(ret1))   # <class 'dict'>

demo.py(json.dump,json.load):

# coding=utf-8
import json


# 使用json.load提取类文件对象中的数据
with open("xxx.json","r",encoding="utf-8") as f:
    ret = json.load(f)
    print(ret)
    print(type(ret))  # <class 'dict'>

# json.dump能够把python类型放入类文件对象中
with open("xxx1.json","w",encoding="utf-8") as f:
    json_dict = {"name": "张三", "age": 18}
    json.dump(json_dict, f, ensure_ascii=False, indent=2)