Python序列化与反序列化pickle用法实例


Posted in Python onNovember 11, 2019

这篇文章主要介绍了Python序列化与反序列化pickle用法实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

要将Python对象作为一个文件的形式保存到磁盘,就叫序列化;

当我们需要用到这个这对象,再从磁盘加载这个对象,就叫反序列化

Python自带的pickle可以帮我们实现,pickle这个单词是咸菜的意思,咸菜耐储存,是不是很形象呀?

对象的存储分为两步:

1.将对象在内存中的数据抓取取来,转换成一个有序的文本,这一步就是序列化

2.再将文本存储到磁盘中

代码如下

import pickle
class Bird(object):
	have_feather = True
reproduction_method = "egg"#
# 创建一个对象
summer = Bird()
pickle_string = pickle.dumps(summer)# 已被序列化成二进制数据
with open("summer.pkl", "wb") as fp:
	fp.write(pickle_string)
# dump方法可以把上面两步作为一步来完成:# with open(
	"summer.pkl", "wb") as fp: #pickle.dump(
	summer, fp)
# 从磁盘文件上恢复对象: 先读取文件, 再loads
with open("summer.pkl", "rb") as fp:
	summer = fp.read()# 先读取
summer = pickle.loads(summer)# 再序列化
print(summer.have_feather)# 或者用load方法, 一步到位# with open(
		"summer.pkl", "rb") as fp: #summer =
	pickle.load(fp)# print(summer.have_feather)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中global与nonlocal比较
Nov 21 Python
Python操作CouchDB数据库简单示例
Mar 10 Python
python爬虫入门教程--快速理解HTTP协议(一)
May 25 Python
python出现"IndentationError: unexpected indent"错误解决办法
Oct 15 Python
R vs. Python 数据分析中谁与争锋?
Oct 18 Python
详解Python里使用正则表达式的ASCII模式
Nov 02 Python
利用python为运维人员写一个监控脚本
Mar 25 Python
Python实现的爬虫刷回复功能示例
Jun 07 Python
Django 限制用户访问频率的中间件的实现
Aug 23 Python
使用Python进行中文繁简转换的实现代码
Oct 18 Python
Python如何优雅删除字符列表空字符及None元素
Jun 25 Python
python实现求纯色彩图像的边框
Apr 08 Python
详解Python可视化神器Yellowbrick使用
Nov 11 #Python
安装Pycharm2019以及配置anconda教程的方法步骤
Nov 11 #Python
详解Python中打乱列表顺序random.shuffle()的使用方法
Nov 11 #Python
基于Python实现ComicReaper漫画自动爬取脚本过程解析
Nov 11 #Python
Python多继承以及MRO顺序的使用
Nov 11 #Python
python 有效的括号的实现代码示例
Nov 11 #Python
Python+OpenCV实现实时眼动追踪的示例代码
Nov 11 #Python
You might like
php通过记录IP来防止表单重复提交方法分析
2014/12/16 PHP
php实现的美国50个州选择列表实例
2015/04/20 PHP
php利用事务处理转账问题
2015/04/22 PHP
php自定义函数实现二维数组排序功能
2016/07/20 PHP
PHP中STDCLASS用法实例分析
2016/11/11 PHP
php微信开发之关注事件
2018/06/14 PHP
Laravel jwt 多表(多用户端)验证隔离的实现
2019/12/18 PHP
javascript实现轮显新闻标题链接
2007/08/13 Javascript
jquery 最简单的属性菜单
2009/10/08 Javascript
JQuery从头学起第一讲
2010/07/04 Javascript
javascript 事件处理程序介绍
2012/06/27 Javascript
js 火狐下取本地路径实现思路
2013/04/02 Javascript
JS中字符串trim()使用示例
2015/05/26 Javascript
AngularJS删除路由中的#符号的方法
2016/09/20 Javascript
基于JS实现checkbox全选功能实例代码
2016/10/31 Javascript
基于js中document.cookie全面解析
2017/09/14 Javascript
vue 基于element-ui 分页组件封装的实例代码
2018/12/10 Javascript
vue实现codemirror代码编辑器中的SQL代码格式化功能
2019/08/27 Javascript
layui table去掉右侧滑动条的实现方法
2019/09/05 Javascript
详解JavaScript自定义函数
2020/07/29 Javascript
如何正确解决VuePress本地访问出现资源报错404的问题
2020/12/03 Vue.js
python基于phantomjs实现导入图片
2016/05/13 Python
python字典键值对的添加和遍历方法
2016/09/11 Python
python数据归一化及三种方法详解
2019/08/06 Python
python 并发编程 多路复用IO模型详解
2019/08/20 Python
Python程序暂停的正常处理方法
2019/11/07 Python
Python时间差中seconds和total_seconds的区别详解
2019/12/26 Python
python orm 框架中sqlalchemy用法实例详解
2020/02/02 Python
Python对Tornado请求与响应的数据处理
2020/02/12 Python
python中xlrd模块的使用详解
2021/02/01 Python
应届毕业生就业自荐信
2013/10/26 职场文书
学生喝酒检讨书
2014/02/06 职场文书
综治工作汇报材料
2014/10/27 职场文书
2014年幼儿园老师工作总结
2014/12/05 职场文书
通知函格式范文
2015/04/27 职场文书
Mysql基础知识点汇总
2021/05/26 MySQL