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程序与C程序的结合使用
Apr 07 Python
详解python中executemany和序列的使用方法
Aug 12 Python
Python之Scrapy爬虫框架安装及简单使用详解
Dec 22 Python
Python线性方程组求解运算示例
Jan 17 Python
Python字符串格式化%s%d%f详解
Feb 02 Python
python实现图书管理系统
Mar 12 Python
如何在Django中设置定时任务的方法示例
Jan 18 Python
关于python中plt.hist参数的使用详解
Nov 28 Python
Python求两个字符串最长公共子序列代码实例
Mar 05 Python
Django vue前后端分离整合过程解析
Nov 20 Python
【超详细】八大排序算法的各项比较以及各自特点
Mar 31 Python
win10+anaconda安装yolov5的方法及问题解决方案
Apr 29 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使用PHPMailer发送邮件的简单使用方法
2013/11/12 PHP
PHP_NETWORK_GETADDRESSES: GETADDRINFO FAILED问题解决办法
2014/05/04 PHP
PHP自定义函数判断是否为Get、Post及Ajax提交的方法
2017/07/27 PHP
为调试JavaScript添加输出窗口的代码
2010/02/07 Javascript
33个优秀的 jQuery 图片展示插件分享
2012/03/14 Javascript
Javascript浅谈之this
2013/12/17 Javascript
用IE重起计算机或者关机的示例代码
2014/03/10 Javascript
遮罩层点击按钮弹出并且具有拖动和关闭效果(两种方法)
2015/08/20 Javascript
jQuery图片渐变特效的简单实现
2016/06/25 Javascript
Vue.js系列之项目结构说明(2)
2017/01/03 Javascript
JS利用正则表达式实现简单的密码强弱判断实例
2017/06/16 Javascript
jQuery中each循环的跳出和结束实例
2017/08/16 jQuery
探讨Vue.js的组件和模板
2017/10/27 Javascript
Angular @HostBinding()和@HostListener()用法
2018/03/05 Javascript
vue.js使用watch监听路由变化的方法
2018/07/08 Javascript
Mint-UI时间组件起始时间问题及时间插件使用
2018/08/20 Javascript
使用electron制作满屏心特效的示例代码
2018/11/27 Javascript
基于vue与element实现创建试卷相关功能(实例代码)
2020/12/07 Vue.js
python中的__init__ 、__new__、__call__小结
2014/04/25 Python
python中的reduce内建函数使用方法指南
2014/08/31 Python
python获取android设备的GPS信息脚本分享
2015/03/06 Python
Python利用ansible分发处理任务
2015/08/04 Python
python实现控制电脑鼠标和键盘,登录QQ的方法示例
2019/07/06 Python
python lambda表达式在sort函数中的使用详解
2019/08/28 Python
基于Django OneToOneField和ForeignKey的区别详解
2020/03/30 Python
Django分组聚合查询实例分享
2020/04/29 Python
纽约的奢华内衣店:Journelle
2016/07/29 全球购物
Scholastic父母商店:儿童书籍
2017/01/01 全球购物
Sport-Thieme荷兰:购买体育用品
2019/08/25 全球购物
优秀团队获奖感言
2014/02/19 职场文书
刑事辩护授权委托书
2014/09/13 职场文书
工厂见习报告范文
2014/10/31 职场文书
2014年乡镇安全生产工作总结
2014/12/02 职场文书
人事任命通知
2015/04/20 职场文书
小学秋季运动会通讯稿
2015/11/25 职场文书
js之ajax文件上传
2021/05/13 Javascript