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升级提示Tkinter模块找不到的解决方法
Aug 22 Python
Flask框架中密码的加盐哈希加密和验证功能的用法详解
Jun 07 Python
python读取excel表格生成erlang数据
Aug 26 Python
基于python socketserver框架全面解析
Sep 21 Python
Python 实现简单的shell sed替换功能(实例讲解)
Sep 29 Python
python判断字符串是否是json格式方法分享
Nov 07 Python
python如何压缩新文件到已有ZIP文件
Mar 14 Python
Python使用Pickle模块进行数据保存和读取的讲解
Apr 09 Python
Django Rest framework解析器和渲染器详解
Jul 25 Python
python数据处理——对pandas进行数据变频或插值实例
Apr 22 Python
Python datetime模块的使用示例
Feb 02 Python
python playwright 自动等待和断言详解
Nov 27 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设计模式 State (状态模式)
2011/06/26 PHP
PHP中spl_autoload_register函数的用法总结
2013/11/07 PHP
php按百分比生成缩略图的代码分享
2014/05/10 PHP
PHP翻页跳转功能实现方法
2020/11/30 PHP
php实现登录tplink WR882N获取IP和重启的方法
2016/07/20 PHP
Windows下php+mysql5.7配置教程
2017/05/16 PHP
JS下载文件|无刷新下载文件示例代码
2014/04/17 Javascript
JavaScript的Number对象的toString()方法
2015/12/18 Javascript
基于HTML模板和JSON数据的JavaScript交互(移动端)
2016/04/06 Javascript
JS组件Bootstrap实现下拉菜单效果代码
2016/04/26 Javascript
深入解析JavaScript中的arguments对象
2016/06/12 Javascript
基于jQuery的ajax方法封装
2016/07/14 Javascript
AngularJS入门之动画
2016/07/27 Javascript
详解Vuejs2.0 如何利用proxyTable实现跨域请求
2017/08/03 Javascript
JavaScript模拟文件拖选框样式v1.0的实例
2017/08/04 Javascript
JavaScript递归算法生成树形菜单
2017/08/15 Javascript
JS简单实现父子窗口传值功能示例【未使用iframe框架】
2017/09/20 Javascript
vue表单自定义校验规则介绍
2018/08/28 Javascript
VUE实现可随意拖动的弹窗组件
2018/09/25 Javascript
微信小程序开发实现的选项卡(窗口顶部/底部TabBar)页面切换功能图文详解
2019/05/14 Javascript
Eclipse + Python 的安装与配置流程
2013/03/05 Python
python批量提交沙箱问题实例
2014/10/08 Python
python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法
2015/05/15 Python
python下载图片实现方法(超简单)
2017/07/21 Python
python去掉 unicode 字符串前面的u方法
2018/10/21 Python
python实现动态数组的示例代码
2019/07/15 Python
Django中的AutoField字段使用
2020/05/18 Python
详解HTML5将footer置于页面最底部的方法(CSS+JS)
2018/10/11 HTML / CSS
Skyscanner加拿大:全球旅行搜索平台
2018/11/19 全球购物
美国亚洲时尚和美容产品的一站式网上商店:Stylevana
2019/09/05 全球购物
英语专业学子个人的自我评价
2013/10/02 职场文书
新闻学毕业生自荐信
2013/11/15 职场文书
教师节横幅标语
2014/10/08 职场文书
2015年中秋放假通知范文
2015/08/18 职场文书
导游词之上海杜莎夫人蜡像馆
2019/11/22 职场文书
Vue Element plus使用方法梳理
2022/12/24 Vue.js