20221220星期二:
常用:json.dumps(),json.loads()
拓展:json.dump(),json.dump()
序列化:将Python对象转换成json字符串:json.dumps
反序列化:将json字符串转换成Python对象:json.loads
"""
@Project : For_Python_Pro
@File : jsonLoadDump.py
@Author : Administrator
@Time : 2022/12/20 10:11
@Product : PyCharm
"""
import json
# Python的JSON模块 序列化与反序列化的过程分别叫做:encoding (编码)和 decoding(解码)。
# encoding: 把Python对象转换成JSON字符串
# decoding: 把JSON字符串转换成python对象
# dumps 与 loads
# 序列化:将Python对象转换成json字符串:json.dumps
dic = {'Name':'Alex'}
result = json.dumps(dic)
print(type(dic),dic) # {'Name': 'Alex'}
print(type(result),result) # {"Name": "Alex"}
# 反序列化:将json字符串转换成Python对象:json.loads
s = '{"Name":"Alex"}'
print(type(s),s) # {"Name":"Alex"}
ret = json.loads(s)
print(type(ret),ret) # {'Name': 'Alex'}
# dump 与 load
# 序列化:将Python对象转换成json字符串并存储到文件中
# json.dump 的功能,将序列化的内容写入文件:
json.dump(dic,open('db.txt','w',encoding='utf-8'))#将序列化的内容写入文件
# 反序列化:读取指定文件中的json字符串并转换成Python对象
# json.load 的功能,将文件读入,反序列化:
ret = json.load(open('db.txt','r',encoding='utf-8'))#将读入文件,反序列化为Python类型数据
print(type(ret),ret)# {'Name': 'Alex'}