json模块
模块的导入
import json
dumps与loads方法
dumps()
将一个数据序列化,变为json字符串
json字符串 = json.dumps(数据)
如果数据中有中文会乱码。解决乱码的办法
json字符串 = json.dumps(数据, ensure_ascii=False)
loads()
将一个json字符串反序列化,还原为原来的类型
原数据 = json.loads(json字符串)
dump与load方法
dump()
将一个数据序列化并保存到文件中
json.dump(数据,文件句柄)
注,无返回值
例子:
import json
f = open("a.txt", "w", encoding="utf8")
info = {"name":"孙尚香"}
# 为了保存字典到文件,需要将它序列化
info_json = json.dump(info, f)
f.close()
print(info_json, type(info_json))
load()
从一个文件中读取内容并进行反序列化
结果 = json.load(文件句柄)
例子:
import json
f = open("a.txt", "r", encoding="utf8")
content = json.load(f)
f.close()
print(content,type(content))
pickle模块
用法与json模块一模一样,区别在于
json序列化与反序列化都是以str为准的
pickle的序列化与反序列化是以bytes数据为准的