序列化模块
import json # json # 注意1:json格式的key必须是字符串,如果不是字符串,在dump的时候会强制转为字符串,load回来也会是字符串 # 注意2:如果value是元组,那么会强制转换成列表,json不支持元组做key会报错 # 注意3:json可以dump多次,但是load的时候会报错。也就是说json只支持一次dump一次load # 序列化 # s = json.dumps(obj) #存到文件 # with open('dump.json','w') as f: # json.dump(obj,f) # 反序列化 # obj = json.loads(s) # 从文件读入 # with open('dump.json') as f: # json.load(f) # 其他参数 # ensure_ascii 默认为True 当为True时,dump中文会变成uncode编码格式 如果改成false则显示中文 # sort_keys 默认为false 改为true时,dump之后的数据,会按照key来排序 # indent 默认不知道,接收int数据,传入2 在dump时候,缩进为2 # separators 格式化dump,原先显示在一行,格式化之后会按照key:val分行显示 接收元组参数(',',':') # pickle import pickle dic = {1:'aa','b':(1,2,3)} ret = pickle.dumps(dic) print(ret) new_dic = pickle.loads(ret) print(new_dic) # pickle 之后是bytes类型 # 支持几乎所有Python数据类型 # 可以多次dump 可以多次load # 序列化 # s = json.dumps(obj) #存到文件 # with open('dump.json','wb') as f: # json.dump(obj,f) # 反序列化 # obj = json.loads(s) # 从文件读入 # with open('dump.json','rb') as f: # json.load(f)