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 相关文章推荐
通过Py2exe将自己的python程序打包成.exe/.app的方法
May 26 Python
Python面向对象程序设计OOP入门教程【类,实例,继承,重载等】
Jan 05 Python
正则给header的冒号两边参数添加单引号(Python请求用)
Aug 09 Python
Pytorch实现GoogLeNet的方法
Aug 18 Python
wxpython多线程防假死与线程间传递消息实例详解
Dec 13 Python
python3爬取torrent种子链接实例
Jan 16 Python
检测tensorflow是否使用gpu进行计算的方式
Feb 03 Python
python 中的paramiko模块简介及安装过程
Feb 29 Python
Python实现Word表格转成Excel表格的示例代码
Apr 16 Python
Python爬虫:Request Payload和Form Data的简单区别说明
Apr 30 Python
python:HDF和CSV存储优劣对比分析
Jun 08 Python
pytorch 预训练模型读取修改相关参数的填坑问题
Jun 05 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
动画 《Pokemon Sword·Shield》系列WEB动画《薄明之翼》第2话声优阵容公开!
2020/03/06 日漫
PHP 实现字符串翻转(包含中文汉字)的实现代码
2017/04/01 PHP
php插入mysql数据返回id的方法
2018/05/31 PHP
ThinkPHP3.2框架自带分页功能实现方法示例
2019/05/13 PHP
js innerHTML 的一些问题的解决方法
2008/06/22 Javascript
基于jquery的内容循环滚动小模块(仿新浪微博未登录首页滚动微博显示)
2011/03/28 Javascript
javascript 文本框水印/占位符(watermark/placeholder)实现方法
2012/01/15 Javascript
jquery $.fn $.fx是什么意思有什么用
2013/11/04 Javascript
瀑布流布局代码一例
2014/04/11 Javascript
vue cli使用绝对路径引用图片问题的解决
2017/12/06 Javascript
vue.js使用3DES加密的方法示例
2018/05/18 Javascript
微信小程序实现人脸识别
2018/05/25 Javascript
Vue面试题及Vue知识点整理
2018/10/07 Javascript
webstorm中配置Eslint的两种方式及差异比较详解
2018/10/19 Javascript
浅谈小程序 setData学问多
2019/02/20 Javascript
echarts统计x轴区间的数值实例代码详解
2019/07/07 Javascript
用webAPI实现图片放大镜效果
2020/11/23 Javascript
Python程序设计入门(3)数组的使用
2014/06/16 Python
python threading模块操作多线程介绍
2015/04/08 Python
python fabric实现远程部署
2017/01/05 Python
python2 与 pyhton3的输入语句写法小结
2018/09/10 Python
python Pandas库基础分析之时间序列的处理详解
2019/07/13 Python
对python while循环和双重循环的实例详解
2019/08/23 Python
Python高级property属性用法实例分析
2019/11/19 Python
Python实现搜索算法的实例代码
2020/01/02 Python
Flask 上传自定义头像的实例详解
2020/01/09 Python
Python接收手机短信的代码整理
2020/08/02 Python
Python Selenium实现无可视化界面过程解析
2020/08/25 Python
Python 数据分析之逐块读取文本的实现
2020/12/14 Python
德国化妆品和天然化妆品网上商店:kosmetikfuchs.de
2017/06/09 全球购物
如何提高JDBC的性能
2013/04/30 面试题
开放系统互连参考模型
2016/06/29 面试题
给水排水工程专业毕业生推荐信
2013/10/28 职场文书
小学教师个人先进事迹材料
2014/05/17 职场文书
2014学习优秀共产党员先进事迹材料思想汇报
2014/09/14 职场文书
群众路线个人整改措施
2014/10/24 职场文书