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,都是对文件操作。

分享图片

相关文章

功能概要:(目前已实现功能)公共展示部分:1.网站首页展示...
大体上把Python中的数据类型分为如下几类: Number(数字) ...
开发之前第一步,就是构造整个的项目结构。这就好比作一幅画...
源码编译方式安装Apache首先下载Apache源码压缩包,地址为ht...
前面说完了此项目的创建及数据模型设计的过程。如果未看过,...
python中常用的写爬虫的库有urllib2、requests,对于大多数比...