Python pickle模块实现对象序列化


Posted in Python onNovember 22, 2019

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

作用

对Python对象进行序列化,便于存储和传输

Python对象序列化成bytes类型

pickle.dumps(obj) 将Python对象转化为bytes类型

pickle.loads(str) 将转化成的bytes类型数据还原成对象

Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import pickle
>>> mydict = {'id':123, 'name':'abc'}
>>> pickle_str = pickle.dumps(mydict)
>>> pickle_str
b'\x80\x03}q\x00(X\x02\x00\x00\x00idq\x01K{X\x04\x00\x00\x00nameq\x02X\x03\x00\x00\x00abcq\x03u.'
>>> newdict = pickle.loads(pickle_str)
>>> newdict
{'id': 123, 'name': 'abc'}

Python对象序列化写入文件

pickle.dump(obj, file)

可以存储多个对象,读取时按存储顺序读取

>>> import pickle
>>> mydict = {'id':123, 'name':'abc'}
>>> file = open('pickle.txt','wb')
>>> pickle.dump(mydict, file)
>>> file.close()

从文件反序列化读取Python对象

pickle.load(obj, file)

>>> import pickle
>>> file = open('pickle.txt','rb')
>>> newdict = pickle.load(file)
>>> file.close()
>>> newdict
{'id': 123, 'name': 'abc'}

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

Python 相关文章推荐
python实现类似ftp传输文件的网络程序示例
Apr 08 Python
python BeautifulSoup设置页面编码的方法
Apr 03 Python
在Python中操作文件之seek()方法的使用教程
May 24 Python
Django中使用locals()函数的技巧
Jul 16 Python
python实现发送邮件功能代码
Dec 14 Python
Python读csv文件去掉一列后再写入新的文件实例
Dec 28 Python
详解python3中的真值测试
Aug 13 Python
Python实现的批量修改文件后缀名操作示例
Dec 07 Python
在Python中等距取出一个数组其中n个数的实现方式
Nov 27 Python
利用 PyCharm 实现本地代码和远端的实时同步功能
Mar 23 Python
利用Selenium添加cookie实现自动登录的示例代码(fofa)
May 08 Python
Pytorch实现图像识别之数字识别(附详细注释)
May 11 Python
python绘制无向图度分布曲线示例
Nov 22 #Python
Python如何实现强制数据类型转换
Nov 22 #Python
python实现宿舍管理系统
Nov 22 #Python
python实现简易淘宝购物
Nov 22 #Python
Python调用graphviz绘制结构化图形网络示例
Nov 22 #Python
python实现简单图书管理系统
Nov 22 #Python
使用Python生成200个激活码的实现方法
Nov 22 #Python
You might like
五款PHP代码重构工具推荐
2014/10/14 PHP
再Docker中架设完整的WordPress站点全攻略
2015/07/29 PHP
对比PHP对MySQL的缓冲查询和无缓冲查询
2016/07/01 PHP
PHP基于mssql扩展远程连接MSSQL的简单实现方法
2016/10/08 PHP
PHP中用mysqli面向对象打开连接关闭mysql数据库的方法
2016/11/05 PHP
php实现的http请求封装示例
2016/11/08 PHP
YII2框架中actions的作用与使用方法示例
2020/03/13 PHP
[原创]js获取数组任意个不重复的随机数组元素
2010/03/15 Javascript
Javascript生成json的函数代码(可以用php的json_decode解码)
2012/06/11 Javascript
有关于eclipse配置spket需要注意的一些地方
2013/04/07 Javascript
jquery结婚电子请柬特效源码分享
2015/08/21 Javascript
js简单判断flash是否加载完成的方法
2016/06/21 Javascript
jQuery插件DataTable使用方法详解(.Net平台)
2016/12/22 Javascript
使用contextMenu插件实现Bootstrap table弹出右键菜单
2017/02/20 Javascript
js 将canvas生成图片保存,或直接保存一张图片的实现方法
2018/01/02 Javascript
JavaScript中使用import 和require打包后实现原理分析
2018/03/07 Javascript
vue中npm包全局安装和局部安装过程
2019/09/03 Javascript
详解webpack的文件监听实现(热更新)
2020/09/11 Javascript
python计算最小优先级队列代码分享
2013/12/18 Python
python用字典统计单词或汉字词个数示例
2014/04/22 Python
实例Python处理XML文件的方法
2015/08/31 Python
Python 爬虫学习笔记之单线程爬虫
2016/09/21 Python
python正则表达式之对号入座篇
2018/07/24 Python
python 保存float类型的小数的位数方法
2018/10/17 Python
利用Python查看微信共同好友功能的实现代码
2019/04/24 Python
微信公众号token验证失败解决方案
2019/07/22 Python
pytorch中图像的数据格式实例
2020/02/11 Python
Python绘制全球疫情变化地图的实例代码
2020/04/20 Python
python map比for循环快在哪
2020/09/21 Python
简单掌握CSS3将文字描边及填充文字颜色的方法
2016/03/07 HTML / CSS
Burt’s Bees英国官网:世界领先的天然个人护理品牌
2020/08/17 全球购物
比较一下entity bean和session bean
2013/12/27 面试题
学校体育节班级口号
2015/12/25 职场文书
情侣餐厅的创业计划书范本!
2019/07/26 职场文书
java中用float时,数字后面加f,这样是为什么你知道吗
2021/09/04 Java/Android
mysql字段为NULL索引是否会失效实例详解
2022/05/30 MySQL