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采用requests库模拟登录和抓取数据的简单示例
Jul 05 Python
python 统计数组中元素出现次数并进行排序的实例
Jul 02 Python
Flask实现图片的上传、下载及展示示例代码
Aug 03 Python
对sklearn的使用之数据集的拆分与训练详解(python3.6)
Dec 14 Python
详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)
Mar 26 Python
基于django传递数据到后端的例子
Aug 16 Python
Python判断字符串是否为空和null方法实例
Apr 26 Python
Python调用OpenCV实现图像平滑代码实例
Jun 19 Python
浅谈Python 函数式编程
Jun 20 Python
神经网络训练采用gpu设置的方式
Mar 03 Python
在python中实现导入一个需要传参的模块
May 12 Python
Python 恐龙跑跑小游戏实现流程
Feb 15 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实现的四则运算表达式计算实现代码
2011/08/02 PHP
php实现兼容2038年后Unix时间戳转换函数
2015/03/18 PHP
php实现encode64编码类实例
2015/03/24 PHP
深入理解PHP变量的值类型和引用类型
2015/10/21 PHP
js实现权限树的更新权限时的全选全消功能
2009/02/17 Javascript
javascript 传统事件模型构造的事件监听器实现代码
2010/05/31 Javascript
通过url查找a元素并点击
2014/04/09 Javascript
在Ubuntu上安装最新版本的Node.js
2014/07/14 Javascript
js监听鼠标点击和键盘点击事件并自动跳转页面
2014/09/24 Javascript
js实现鼠标感应向下滑动隐藏菜单的方法
2015/02/20 Javascript
微信小程序 wx.uploadFile无法上传解决办法
2016/12/14 Javascript
js图片延迟加载(Lazyload)三种实现方式
2017/03/01 Javascript
canvas绘制一个常用的emoji表情
2017/03/30 Javascript
angularjs实现首页轮播图效果
2017/04/14 Javascript
深入浅出webpack教程系列_安装与基本打包用法和命令参数详解
2017/09/10 Javascript
浅谈JavaScript作用域和闭包
2017/09/18 Javascript
vue下history模式刷新后404错误解决方法
2018/08/18 Javascript
JS实现打字游戏
2019/12/17 Javascript
[04:03]DOTA2英雄梦之声_第02期_风暴之灵
2014/06/30 DOTA
python中常用检测字符串相关函数汇总
2015/04/15 Python
python使用锁访问共享变量实例解析
2018/02/08 Python
TensorFlow saver指定变量的存取
2018/03/10 Python
Python 移动光标位置的方法
2019/01/20 Python
Python3远程监控程序的实现方法
2019/07/15 Python
django框架模型层功能、组成与用法分析
2019/07/30 Python
在pycharm中文件取消用 pytest模式打开的操作
2020/09/01 Python
python 实现全球IP归属地查询工具
2020/12/18 Python
详解html5 shiv.js和respond.min.js
2018/01/24 HTML / CSS
意大利一家专营包包和配饰的网上商店:Borse Last Minute
2019/08/26 全球购物
咖啡厅创业计划书范本
2014/01/22 职场文书
乡镇庆八一活动方案
2014/02/02 职场文书
党员岗位承诺书
2014/03/25 职场文书
投标文件签署授权委托书范本
2014/10/12 职场文书
家长学校教学计划
2015/01/19 职场文书
幼儿园圣诞节活动总结
2015/05/06 职场文书
利用html+css实现菜单栏缓慢下拉效果的示例代码
2021/03/30 HTML / CSS