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的Flask框架中实现简单的登录功能的教程
Apr 20 Python
Python中exit、return、sys.exit()等使用实例和区别
May 28 Python
在Django的URLconf中使用命名组的方法
Jul 18 Python
Python使用add_subplot与subplot画子图操作示例
Jun 01 Python
Pycharm代码无法复制,无法选中删除,无法编辑的解决方法
Oct 22 Python
将pandas.dataframe的数据写入到文件中的方法
Dec 07 Python
python 应用之Pycharm 新建模板默认添加编码格式-作者-时间等信息【推荐】
Jun 17 Python
Django xadmin开启搜索功能的实现
Nov 15 Python
TensorFlow 显存使用机制详解
Feb 03 Python
Python3 集合set入门基础
Feb 10 Python
Python 读取WAV音频文件 画频谱的实例
Mar 14 Python
tensorflow使用CNN分析mnist手写体数字数据集
Jun 17 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的控制语句
2006/10/09 PHP
php设计模式 Adapter(适配器模式)
2011/06/26 PHP
php切割页面div内容的实现代码分享
2012/07/31 PHP
IIS6.0 开启Gzip方法及PHP Gzip函数分享
2014/06/08 PHP
浅析application/x-www-form-urlencoded和multipart/form-data的区别
2014/06/22 PHP
PHP中大于2038年时间戳的问题处理方案
2015/03/03 PHP
PHP实现时间比较和时间差计算的方法示例
2017/07/24 PHP
PHP封装的mysqli数据库操作类示例
2019/02/16 PHP
jquery删除指定子元素代码实例
2015/01/13 Javascript
基于Jquery和html5的7款个性化地图插件
2015/11/17 Javascript
JavaScript中创建对象的模式汇总
2016/04/19 Javascript
在JavaScript中对HTML进行反转义详解
2016/05/18 Javascript
jQuery EasyUi 验证功能实例解析
2017/01/06 Javascript
如何快速上手Vuex
2017/02/14 Javascript
vue插槽slot的理解和使用方法
2019/04/03 Javascript
vue3.0自定义指令(drectives)知识点总结
2020/12/27 Vue.js
[03:42]2014DOTA2西雅图国际邀请赛 Navi战队巡礼
2014/07/07 DOTA
关于python的list相关知识(推荐)
2017/08/30 Python
python抓取需要扫微信登陆页面
2019/04/29 Python
Python日志无延迟实时写入的示例
2019/07/11 Python
Python实现将蓝底照片转化为白底照片功能完整实例
2019/12/13 Python
python GUI库图形界面开发之PyQt5不规则窗口实现与显示GIF动画的详细方法与实例
2020/03/09 Python
Keras之fit_generator与train_on_batch用法
2020/06/17 Python
python smtplib发送多个email联系人的实现
2020/10/09 Python
使用HTML5 IndexDB存储图像和文件的示例
2018/11/05 HTML / CSS
英国汽车和货车租赁网站:Hertz英国
2016/09/02 全球购物
物流专业毕业生推荐信范文
2013/11/18 职场文书
求职自荐信怎么写
2014/03/06 职场文书
产品销售计划书
2014/05/04 职场文书
师范生求职自荐信
2014/06/14 职场文书
消防演习通知
2015/04/25 职场文书
英语演讲开场白
2015/05/29 职场文书
遗失证明范文
2015/06/19 职场文书
环保宣传语大全
2015/07/13 职场文书
2016大学军训通讯稿
2015/11/25 职场文书
Python jiaba库的使用详解
2021/11/23 Python