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合并两个字典的常用方法与效率比较
Jun 17 Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
Jan 31 Python
Python实现的绘制三维双螺旋线图形功能示例
Jun 23 Python
pycharm运行程序时在Python console窗口中运行的方法
Dec 03 Python
Python multiprocessing多进程原理与应用示例
Feb 28 Python
python之mock模块基本使用方法详解
Jun 27 Python
在python中,使用scatter绘制散点图的实例
Jul 03 Python
详解python列表(list)的使用技巧及高级操作
Aug 15 Python
python lambda表达式(匿名函数)写法解析
Sep 16 Python
Python HTMLTestRunner可视化报告实现过程解析
Apr 10 Python
Python使用pyenv实现多环境管理
Feb 05 Python
如何利用Python实现一个论文降重工具
Jul 09 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
通达OA公共代码 php常用检测函数
2011/12/14 PHP
PHP递归调用的小技巧讲解
2013/02/19 PHP
php接口数据加密、解密、验证签名
2015/03/12 PHP
详解PHP中的状态模式编程
2015/08/11 PHP
PHP实现执行外部程序的方法详解
2017/08/17 PHP
laravel使用数据库测试注意事项
2020/04/10 PHP
Javascript select下拉框操作常用方法
2009/11/09 Javascript
基于JQuery的一句代码实现表格的简单筛选
2010/07/26 Javascript
js从10种颜色中随机取色实现每次取出不同的颜色
2013/10/23 Javascript
jQuery的animate函数学习记录
2014/08/08 Javascript
js实现照片墙功能实例
2015/02/05 Javascript
深入理解jQuery中的事件冒泡
2016/05/24 Javascript
使用BootStrap实现悬浮窗口的效果
2016/12/13 Javascript
微信小程序 动态的设置图片的高度和宽度详解及实例代码
2017/02/24 Javascript
js中setTimeout的妙用--防止循环超时
2017/03/06 Javascript
node.js中fs文件系统目录操作与文件信息操作
2018/02/24 Javascript
Angular使用ControlValueAccessor创建自定义表单控件
2019/03/08 Javascript
[00:43]DOTA2小紫本全民票选福利PA至宝全方位展示
2014/11/25 DOTA
[44:04]OG vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
简单学习Python time模块
2016/04/29 Python
python实现数据预处理之填充缺失值的示例
2017/12/22 Python
对Python中Iterator和Iterable的区别详解
2018/10/18 Python
Python后台开发Django会话控制的实现
2019/04/15 Python
Python安装与基本数据类型教程详解
2019/05/29 Python
tensorflow下的图片标准化函数per_image_standardization用法
2020/06/30 Python
The North Face北面荷兰官网:美国著名户外品牌
2019/10/16 全球购物
The North Face北面法国官网:美国著名户外品牌
2019/11/01 全球购物
大学毕业生求职自荐信
2014/02/20 职场文书
2014酒店客房部工作总结
2014/12/16 职场文书
综合素质评价个性与发展自我评价
2015/03/06 职场文书
升职自荐信范文
2015/03/27 职场文书
2015年数学教研工作总结
2015/07/22 职场文书
宣传稿格式范文
2015/07/23 职场文书
开业庆典嘉宾致辞
2015/08/01 职场文书
springboot 启动如何排除某些bean的注入
2021/08/02 Java/Android
解决springboot druid数据库连接失败后一直重连的方法
2022/04/19 Java/Android