Python使用pickle模块存储数据报错解决示例代码


Posted in Python onJanuary 26, 2018

本文研究的主要是Python使用pickle模块存储数据报错解决方法,以代码的形式展示,具体如下。

首先来了解下pickle模块

  • pickle提供了一个简单的持久化功能。可以将对象以文件的形式存放在磁盘上。
  • pickle模块只能在python中使用,python中几乎所有的数据类型(列表,字典,集合,类等)都可以用pickle来序列化,
  • pickle序列化后的数据,可读性差,人一般无法识别。

接下来我们看下Python使用pickle模块存储数据报错解决方法。

代码:

# 写入错误
TypeError: write() argument must be str, not bytes


# 读取错误
UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 0: illegal multibyte sequence

解决方案:

def storeTree(inputTree, fielname):
  import pickle
  # 写文件时,注明 'wb'
  fw = open(fielname, 'wb')
  pickle.dump(inputTree, fw)
  fw.close()

def grabTree(filename):
  import pickle
   # 读文件时,注明 'rb'
  fr = open(filename, 'rb')
  fr = open(filename)
  return pickle.load(fr)

storeTree(myTree, 'classifierStorage.txt')
print(grabTree('classifierStorage.txt'))

输出:

{'no surfacing': {0: 'no', 1: {'flippers': {0: 'no', 1: 'yes'}}}}

Process finished with exit code 0

总结

以上就是本文关于Python使用pickle模块存储数据报错解决示例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

Python 相关文章推荐
python实现DES加密解密方法实例详解
Jun 30 Python
Python实现将DOC文档转换为PDF的方法
Jul 25 Python
Python使用Mechanize模块编写爬虫的要点解析
Mar 31 Python
python实现的二叉树定义与遍历算法实例
Jun 30 Python
python 高效去重复 支持GB级别大文件的示例代码
Nov 08 Python
对python的输出和输出格式详解
Dec 08 Python
python函数装饰器之带参数的函数和带参数的装饰器用法示例
Nov 06 Python
Python使用psutil获取进程信息的例子
Dec 17 Python
matplotlib教程——强大的python作图工具库
Oct 15 Python
Python可视化工具如何实现动态图表
Oct 23 Python
python爬不同图片分别保存在不同文件夹中的实现
Apr 02 Python
python和anaconda的区别
May 06 Python
python如何重载模块实例解析
Jan 25 #Python
Python进程间通信Queue实例解析
Jan 25 #Python
Python操作Redis之设置key的过期时间实例代码
Jan 25 #Python
python编程使用selenium模拟登陆淘宝实例代码
Jan 25 #Python
python画出三角形外接圆和内切圆的方法
Jan 25 #Python
Python实现批量压缩图片
Jan 25 #Python
python生成圆形图片的方法
Mar 25 #Python
You might like
php实现用已经过去多长时间的方式显示时间
2015/06/05 PHP
PHP多进程编程总结(推荐)
2016/07/18 PHP
ThinkPHP3.2.3框架实现的空模块、空控制器、空操作,跳转到错误404页面图文详解
2019/04/03 PHP
Javascript 函数对象的多重身份
2009/06/28 Javascript
用js判断页面刷新或关闭的方法(onbeforeunload与onunload事件)
2012/06/22 Javascript
jquery制作select列表双向选择示例代码
2014/09/02 Javascript
Json实现异步请求提交评论无需跳转其他页面
2014/10/11 Javascript
浅谈Javascript中深复制
2014/12/01 Javascript
深入讲解AngularJS中的自定义指令的使用
2015/06/18 Javascript
JS实现可点击展开与关闭的左侧广告代码
2015/09/02 Javascript
jQuery往返城市和日期查询实例讲解
2015/10/09 Javascript
移动端横屏的JS代码(beta)
2016/05/16 Javascript
基于JavaScript实现全选、不选和反选效果
2017/02/15 Javascript
Node.js读取文件内容示例
2017/03/07 Javascript
详谈jQuery中的一些正则匹配表达式
2017/03/08 Javascript
vue-cli 3 全局过滤器的实例代码详解
2019/06/03 Javascript
如何在Express4.x中愉快地使用async的方法
2020/11/18 Javascript
用实例说明python的*args和**kwargs用法
2013/11/01 Python
Python实现telnet服务器的方法
2015/07/10 Python
Python中内置的日志模块logging用法详解
2016/07/12 Python
Python实现控制台中的进度条功能代码
2017/12/22 Python
Python cookbook(数据结构与算法)将序列分解为单独变量的方法
2018/02/13 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
2018/06/11 Python
pandas每次多Sheet写入文件的方法
2018/12/10 Python
python 字典item与iteritems的区别详解
2020/04/25 Python
简单了解Python字典copy与赋值的区别
2020/09/16 Python
HTML5中的音频和视频媒体播放元素小结
2016/01/29 HTML / CSS
20世纪40年代连衣裙和复古服装:The Seamstress Of Bloomsbury
2018/07/24 全球购物
毕业生求职推荐信
2013/11/04 职场文书
电子商务毕业生求职信
2013/11/10 职场文书
致跳远、跳高运动员广播稿
2014/01/09 职场文书
医学专业毕业生推荐信
2014/07/12 职场文书
2015年艾滋病宣传活动总结
2015/03/27 职场文书
休假证明书
2015/06/24 职场文书
大学开学感言
2015/08/01 职场文书
小学感恩主题班会
2015/08/12 职场文书