python中dump、load和dumps、loads的区别
dump
json.dump()用于将dict类型的数据转成str,并写入到json文件中。
import json Dict = {"name":"tom"} with open("./file.json", "w") as f: json.dump(Dict, f)
load
json.load()用于从json文件中读取数据
import json with open("./file.json", "r") as f: Dict = json.load(f) print(Dict)
dumps
json.dumps()用于将dict类型的数据转成str,因为如果直接将dict类型的数据写入json文件中会发生报错,因此在将数据写入时需要用到该函数。
import json Dict = {"name": "tom"} Str = json.dumps(Dict) with open("./file.json", "w") as f: f.write(Str)
json序列化时,默认遇到中文会转换成unicode,如果想要保留中文在序列化时,在dumps函数中添加参数ensure_ascii=False即可解决。
loads
json.loads()用于将str类型的数据转成dict。
import json Dict = {"name": "tom"} Str = json.dumps(Dict) Dict1 = json.loads(Str)