首页 > 代码库 > python3学习之序列化

python3学习之序列化


其他-->字符串,叫序列化

字符串-->其他,叫反序列化

有两个模块:

json   可以处理python基本数据类型,字典,列表,元组,保存的文件是“明文的”

pickle 可以处理python全部数据类型,专用于python,保存的文件是“加密的”


json

import json

l = ‘{"a":123,"b":234}‘

ll = json.loads(l)   #从变量加载字符串转为词典;json格式的数据必须是键值对;  python-> json
print(ll,type(ll))

s = json.dumps(ll)   #将json格式的变量转换为python;   json-> python
print(s,type(s))

op = open("t.log","r")
r = json.load(op)  #从文件加载
print(r,type(r))

op1 = open("tt.log", "a")
json.dump(ll, op1)  #写入到文件

pickle

import pickle   #读写都是字节即:wb或者rb


l = ‘aaaaaaaaa‘
l1 = pickle.dumps(l)
print(l1)

ll = pickle.loads(l1)
print(ll)

pickle.dump(l1,open("ttt.log","wb"))  #写入文件,wb以字节写入
pickle.load(open("ttt.log","rb"))     #读取文件,rb以字节读取   b很重要


python3学习之序列化