微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python json库中load、loads、dump、dumps的区别与用法

1 json.loads()

json格式的数据转化为字典类型

data_json = ‘{"msg": "登录成功","code": "10001","data": null,"status":1}‘
data_dict = json.loads(data_json,encoding="utf-8")

  

分享图片

这个时候,如果使用 eval(data_json) 将会报错。

NameError: name ‘null‘ is not defined

2 json.load()

 从文件中读取json类型的数据,并转化为字典类型

data_json = ‘{"msg": "登录成功","status":1}‘
with open("json_file.txt",mode="r",encoding="utf-8") as file:
    date_dict = json.load(file)

  

分享图片

3 json.dumps()

将Python中特定类型进行字符串化操作,即转换为json格式的数据

注意:字典、列表等都可以进行字符串话操作,变为json格式

one_dict = {"name": "菲菲","age": 18,"money": None}
one_str = str(one_dict)
one_json = json.dumps(one_dict)
two_json = json.dumps(one_dict,ensure_ascii=False)

  

分享图片

one_tuple = ["菲菲",18,None]
one_str = str(one_tuple)
one_json = json.dumps(one_tuple)
two_json = json.dumps(one_tuple,ensure_ascii=False)

  

分享图片

4 json.dump()

将字典类型转化为json字符串格式,写入到文件

one_dict = {"name": "字典型","money": None}
with open("json_file.txt",mode="a",encoding="utf-8") as file:
    json.dump(one_dict,file, ensure_ascii=False)
one_tuple = ["菲菲",None]
with open("json_file.txt",encoding="utf-8") as file:
    json.dump(one_tuple,file,ensure_ascii=False)

 

总结:

loads  将json格式的数据转化为dict

dumps  将字典、列表t等类型的数据转化成json格式

load  读取json格式文件,并返回dict

dump  将字典、列表等格式的数据转化为json格式,写入文件

 

试了一下,

load,loads好像是只能转化成为dict。(反序列化,流——对象)

dump,dumps可以将列表,字典数据转化为json格式。(序列化,对象——可保存或可传输格式)

单词后面有s,都是对文件操作。

分享图片

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐