21天学习python编程_pickle模块序列化与反序列化
2021-04-11 05:29
标签:序列 对象 des 方法 操作 data 红包 block 使用 如果看完这篇文章,你还是弄不明白pickle操作; pickle模块实现了用于序列化和反序列化Python对象结构的二进制协议; 主要区别: JSON是一种文本序列化格式,pickle是二进制序列化格式; 主要方法: 序列化与反序列化: 结果: 结果: 以上就是pickle相关主要内容,pickle操作与json类似,大家可以自己尝试操作下。 21天学习python编程_pickle模块序列化与反序列化 标签:序列 对象 des 方法 操作 data 红包 block 使用 原文地址:https://blog.51cto.com/huangyg/2512492
你来找我,我保证不打你,我给你发100的大红包。1. pickle模块
1.1 认识pickle:
序列化:将Python对象转成字节流;
反序列化:将字节流转成Python对象;1.2 pickle与Json:
JSON具有一定可读的,而pickle不能
JSON是可以与其他语言相互转换,pickle值能用于Python2 pickle模块使用
方法
说明
pickle.dumps(obj, protocol=None,...)
Python对象序列化
pickle.loads(data, *, ...)
反序列化
pickle.dump(obj, file, ...)
将Python对象序列化并保存到文件
pickle.load(file, ...)
将序列化文件导入,并转成Python对象
import pickle
names = [‘公孙离‘,‘裴擒虎‘]
#转成Json字符串
pdata = pickle.dumps(names)
print(pdata)
#将Json字符串转Python对象
data = pickle.loads(pdata)
print(data)
b‘\x80\x00q....‘
[‘公孙离‘, ‘裴擒虎‘]
import pickle
fpath = r‘C:\Users\hyg\Desktop\data\1.pickle‘
names = [‘公孙离‘,‘裴擒虎‘]
#写入操作,wb方式打开文件
f = open(fpath, ‘wb‘)
#转成Json,写入到文件
pickle.dump(names,f)
f.close()
#读取操作,rb方式打开文件
f = open(fpath, ‘rb‘)
#将Json字符串从文件读取,并转成Python对象
pdata = pickle.load(f)
print(pdata)
f.close()
[‘公孙离‘, ‘裴擒虎‘]
文章标题:21天学习python编程_pickle模块序列化与反序列化
文章链接:http://soscw.com/index.php/essay/74132.html