Python使用Pickle模块进行数据保存和读取的讲解


Posted in Python onApril 09, 2019

pickle 是一个 python 中, 压缩/保存/提取 文件的模块,字典和列表都是能被保存的.

但必须注意的是python2以ASCII形式保存,而在python3中pickle是使用转换二进制的数据压缩方法保存数据

所以,在保存或者读取数据的时候,打开文件应该使用‘wb' 'rb'的方式

import pickle
a = 'owoof'
with open('111.pkl', 'wb') as file:
    pickle.dump(a, file)

在Pickle模块中还有dumps()loads()函数,他们是直接实现一个二进制和pickle表示对象的转换,不用打开文件(这点与dump不同)

dumps()是将可读对象转换成二进制文件,并返回二进制文件,loads()是把二进制文件转换成可读对象,并返回对象

在使用dump()和load()时,需要注意用with open 打开一次文件每调用一次dump()就会在文件中生成一次数据, 当再次with open 打开文件时, 之前写数据调用了几次dump()就最多只能调用load()几次,而且每次dump()是和load()对应的.

with open('poins_normal.pkl', 'rb') as file:with open('poins_normal.pkl', 'rb') as file:
  class_1 = pickle.load(file)
  # print(np.shape(class_1))
  class_2 = pickle.load(file)
  labels = pickle.load(file)
  class_1 = pickle.load(file)
  # print(np.shape(class_1))
  class_2 = pickle.load(file)
  labels = pickle.load(file)

如上,我事先写了三次dump(),那么之后的三次load()是一一对应的,如果我进行第四次load()调用,编译器会提示data  ran out of .

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
Python标准库os.path包、glob包使用实例
Nov 25 Python
python实现根据窗口标题调用窗口的方法
Mar 13 Python
在Python中使用NLTK库实现对词干的提取的教程
Apr 08 Python
Python实现的爬虫刷回复功能示例
Jun 07 Python
解决python线程卡死的问题
Feb 18 Python
Python中字符串与编码示例代码
May 20 Python
python设置表格边框的具体方法
Jul 17 Python
使用scrapy ImagesPipeline爬取图片资源的示例代码
Sep 28 Python
python修改微信和支付宝步数的示例代码
Oct 12 Python
Python+unittest+requests+excel实现接口自动化测试框架
Dec 23 Python
解决jupyter notebook启动后没有token的坑
Apr 24 Python
OpenCV-Python实现怀旧滤镜与连环画滤镜
Jun 09 Python
Python爬取数据保存为Json格式的代码示例
Apr 09 #Python
python实现QQ空间自动点赞功能
Apr 09 #Python
Python实现的多进程拷贝文件并显示百分比功能示例
Apr 09 #Python
Python使用crontab模块设置和清除定时任务操作详解
Apr 09 #Python
Python实现的读取文件内容并写入其他文件操作示例
Apr 09 #Python
Python实现根据日期获取当天凌晨时间戳的方法示例
Apr 09 #Python
Python匿名函数及应用示例
Apr 09 #Python
You might like
PHP的宝库目录--PEAR
2006/10/09 PHP
php 去除html标记--strip_tags与htmlspecialchars的区别详解
2013/06/26 PHP
php实现图片以base64显示的方法
2016/10/13 PHP
extjs 学习笔记(二) Ext.Element类
2009/10/13 Javascript
从jQuery.camelCase()学习string.replace() 函数学习
2011/09/13 Javascript
(跨浏览器基础事件/浏览器检测/判断浏览器)经验代码分享
2013/01/24 Javascript
JS刷新当前页面的几种方法总结
2013/12/24 Javascript
Jquery 实现table样式的设定
2015/01/28 Javascript
jQuery实现跨域iframe接口方法调用
2015/03/14 Javascript
AngularJS学习笔记之基本指令(init、repeat)
2015/06/16 Javascript
jquery地址栏链接与a标签链接匹配之特效代码总结
2015/08/24 Javascript
基于jquery实现日历签到功能
2020/09/11 Javascript
javascript中new关键字详解
2015/12/14 Javascript
jQuery中库的引用方法
2018/01/06 jQuery
详解Angular中实现自定义组件的双向绑定的两种方法
2018/11/23 Javascript
微信小程序 WXML节点信息查询详解
2019/07/29 Javascript
浅谈vue 组件中的setInterval方法和window的不同
2020/07/30 Javascript
JS实现简单贪吃蛇小游戏
2020/10/28 Javascript
跟老齐学Python之坑爹的字符编码
2014/09/28 Python
python下MySQLdb用法实例分析
2015/06/08 Python
Django原生sql也能使用Paginator分页的示例代码
2017/11/15 Python
Sublime开发python程序的示例代码
2018/01/24 Python
Python实现的读取电脑硬件信息功能示例
2018/05/30 Python
python配置grpc环境
2019/01/01 Python
解决pycharm的Python console不能调试当前程序的问题
2019/01/20 Python
Joe Fresh官网:加拿大时尚品牌和零售连锁店
2016/11/30 全球购物
Reebonz中国官网:新加坡奢侈品购物网站
2017/03/17 全球购物
马来西亚太阳镜、眼镜和隐形眼镜网上商店:Focus Point
2018/12/13 全球购物
女子锻炼服装和瑜伽服装:Splits59
2019/03/04 全球购物
自考毕业生自我鉴定
2013/11/04 职场文书
三年级音乐教学反思
2014/01/28 职场文书
新闻编辑专业毕业自荐书范文
2014/02/05 职场文书
2015年党员公开承诺书范文
2015/01/22 职场文书
小学班主任工作随笔
2015/08/15 职场文书
《女娲补天》读后感5篇
2019/12/31 职场文书
Python软件包安装的三种常见方法
2022/07/07 Python