Python序列化模块json和pickle

json和pickle都是Python对json格式数据进行序列化的模块

json: 用于字符串和python数据类型间进行转换
pickle: 用于python特有的类型和python的数据类型间进行转换

不同的是json序列化出来的是通用格式,而pickle序列化出来的是只能用于Python的格式

json:

json.dump(obj, fp) #序列化obj对象为json格式的字符串,并写入打开的fp文件中

例如

fp = file('delav.txt', 'w')
json.dump(['streaming API'], fp) # delav.txt文件中有['streaming API']

 

json.dumps(obj) #将obj对象序列化为json格式的字符串

例如

json.load(fp) #将文件打开并将字符串反序列化为Python数据结构对象

例如

 

json.loads(s) # 反序列化字符串s为Python数据结构对象

例如

pickle:

pickle.dump(obj, file) # 将obj序列化为只有python语言能识别的字符串,并写入文件file

例如

fp = file('delav.txt', 'w')
pickle.dump(['streaming API'], fp) # delav.txt文件中有如下字符
(lp0
S'streaming API'
p1
a.

pickle.dumps(obj) # 将obj序列化为只有python语言能识别的字符串

例如

pickle.load(file) # 从file文件中读取数据,并反序列化为python数据结构对象

例如

pickle.loads(str) # 将经过dumps的str反序列化为Python数据结构对象

例如

猜你喜欢

转载自www.cnblogs.com/delav/p/9270913.html