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使用BeautifulSoup分页网页中超链接的方法
Apr 04 Python
python 查找字符串是否存在实例详解
Jan 20 Python
python实现Floyd算法
Jan 03 Python
Python反射的用法实例分析
Feb 11 Python
Python实现的端口扫描功能示例
Apr 08 Python
Python中最好用的命令行参数解析工具(argparse)
Aug 23 Python
pytorch: Parameter 的数据结构实例
Dec 31 Python
TensorFlow基本的常量、变量和运算操作详解
Feb 03 Python
opencv+python实现均值滤波
Feb 19 Python
Python 解析简单的XML数据
Jul 24 Python
Python制作一个仿QQ办公版的图形登录界面
Sep 22 Python
python通过函数名调用函数的几种方法总结
Jun 07 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
iis下php mail函数的sendmail配置方法(官方推荐)
2012/04/25 PHP
php实现文件下载实例分享
2014/06/02 PHP
PHP中__FILE__、dirname与basename用法实例分析
2014/12/01 PHP
最新制作ThinkPHP3.2.3完全开发手册
2015/11/23 PHP
php简单创建zip压缩文件的方法
2016/04/30 PHP
Extjs在exlipse中设置自动提示的方法
2010/04/07 Javascript
javascript采用数组实现tab菜单切换效果
2012/12/12 Javascript
node.js [superAgent] 请求使用示例
2015/03/13 Javascript
深入理解JavaScript的React框架的原理
2015/07/02 Javascript
js鼠标经过tab选项卡时实现切换延迟
2017/03/24 Javascript
使用vue的v-for生成table并给table加上序号的实例代码
2017/10/27 Javascript
mui back 返回刷新页面的实例
2017/12/06 Javascript
webpack打包js的方法
2018/03/12 Javascript
webpack4 css打包压缩问题的解决
2018/05/18 Javascript
微信小程序和百度的语音识别接口详解
2019/05/06 Javascript
判断JavaScript中的两个变量是否相等的操作符
2019/12/21 Javascript
Python实现树的先序、中序、后序排序算法示例
2017/06/23 Python
python  文件的基本操作 菜中菜功能的实例代码
2019/07/17 Python
对Pytorch神经网络初始化kaiming分布详解
2019/08/18 Python
Pytorch mask_select 函数的用法详解
2020/02/18 Python
解决django FileFIELD的编码问题
2020/03/30 Python
python中前缀运算符 *和 **的用法示例详解
2020/05/28 Python
Django中的模型类设计及展示示例详解
2020/05/29 Python
使用Keras 实现查看model weights .h5 文件的内容
2020/06/09 Python
python3字符串输出常见面试题总结
2020/12/01 Python
EJB timer的种类
2014/10/28 面试题
珍珠奶茶店创业计划书
2014/01/11 职场文书
关于元旦的广播稿
2014/02/16 职场文书
平安建设实施方案
2014/03/19 职场文书
家长对老师的评语
2014/04/18 职场文书
常务副总经理任命书
2014/06/05 职场文书
倡导文明标语
2014/06/16 职场文书
员工安全生产责任书
2014/07/22 职场文书
2014年统战工作总结
2014/12/09 职场文书
班主任工作经验交流会总结
2015/11/02 职场文书
spring boot中nativeQuery的用法
2021/07/26 Java/Android