python load 和loads 区别

一句话,load通过json.load(open(’*.json’))这样的格式,从文件句柄中打开文件,加载到Python的变量中,并以字典的格式转换。而loads必须对于Python内存中的序列化对象转换成字符串。

因此,load和loads都是实现“反序列化”,区别在于(以Python为例)。loads针对内存对象,即将Python内置数据序列化为字串。
如使用json.dumps序列化的对象d_json=json.dumps({‘a‘:1, ‘b‘:2}),
在这里d_json是一个字串‘{“b”: 2, “a”: 1}‘

d=json.loads(d_json) #{ b": 2, “a”: 1},使用load重新反序列化为dict,load针对文件句柄,如本地有一个json文件a.json则可以d=json.load(open(‘a.json‘))相应的,dump就是将内置类型序列化为json对象后写入文件。

你可能感兴趣的:(python基础学习笔记)