9.1_1 json模块(补充)
9.1_1 json模块(补充)
思考:为什么要有json模块?json模块有什么用?
1. 序列化(重点)
保存数据,(从内存到硬盘这个过程叫作序列化,这个序列化必须得规定格式,例如.mp4、.txt文件)
这边保存的格式为json文件。
2. 反序列化(重点)
把json文件从硬盘中读取出来。
3.json模块(重点)
- json文件不是python所独有的,所有的语言都有json文件,因此json文件可以实现跨平台,跨语言传输数据。
- json文件中只能写入python中的str/int/flot/dict/list/bool/None这几个数据类型。
4. 在内存中
(1)序列化过程
import json
dic={'name':'coco'}
res_dumps=json.dumps(dic)
print(res_dumps,type(res_dumps))
#输出
{"name": "coco"} <class 'str'>
(2)去序列化过程
res_loads=json.loads(res_dumps)
print(res_loads,type(res_loads))
#输出
{'name': 'coco'} <class 'dict'>
5.在文件中(重点)
(1)序列化
import json
dic={'name':'coco'}
with open(r'test.json', 'w', encoding='utf-8') as f_w:
json.dump(dic,f_w)
(2)反序列化
with open(r'test.json', 'r', encoding='utf-8') as f_r:
data=json.load(f_r)
print(data,type(data))
浙公网安备 33010602011771号