Python使用pickle模块存储数据报错解决示例代码
作者:HeatDeath 发布时间:2023-12-10 02:05:05
标签:python,pickle,存储
本文研究的主要是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
来源:http://blog.csdn.net/heatdeath/article/details/75668504


猜你喜欢
- 偶然在Google发现了他们的用户体验设计原则,因此翻译作一下记录。1.以人为本 —他们的生活、他们的工作和他们的梦想2.珍惜每一毫秒的时间
- 请求动态参数(例如时间戳)有时我们在请求接口时,需要带上当前时间戳这种动态参数,那么postman能不能自动的填充上呢。我们可以使用post
- Python深搜版:核心在于带随机的深搜(见代码第23到27行,其实也可以用22行代替这几行代码,你可以试着把第24行的数字4改大或者改小,
- 1、背景a、搜狗也发布了自己的人工智能 api,包括身份证ocr、名片ocr、文本翻译等API,初试感觉准确率一般般。b、基于python3
- 问题:输出新建的DataFrame对象时,DataFrame中各列的显示顺序和DataFrame定义中的顺序不一致。例如:import pa
- 本文主要介绍了vue+elementui通用弹窗的实现(新增+编辑),分享给大家,具体如下:组件模板<el-dialog :title
- 刷票一般要突破以下限制:1、验证码识别2、同一ip不可连续投票解决办法1、用tesseract工具,链接在此 https://code.go
- 本文实例讲述了Flask-Mail用法。分享给大家供大家参考,具体如下:很多类型的应用程序都需要在特定事件发生时提醒用户,而常用的通信方法是
- 前言看Python代码时,碰见 numpy.transpose 用于高维数组时挺让人费解,通过一番画图分析和代码验证,发现 transpos
- <span class="up-btn" id="selectFile">请选择文件&l
- 切片的声明切片可以看成是数组的引用(实际上切片的底层数据结构确实是数组)。在 Go 中,每个数组的大小是固定的,不能随意
- 一行命令搭建一个基于python的http文件传输服务由于今天朋友想要一个文件,而我恰好有,因为这个文件比较大,网速不是很给力,所以想到了p
- createTrackbar是Opencv中的API,其可在显示图像的窗口中快速创建一个滑动控件,用于手动调节阈值,具有非常直观的效果。具体
- 首先将ORACLE 10g的安装光盘放入光驱,如果自动运行,一般会出现如图1安装界面: 图1 单击“开始安装”,就可以安装ORACLE 10
- 本文介绍了vue下history模式刷新后404错误解决方法,分享给大家,具体如下:官方说明文档:https://router.vuejs.
- PDOStatement::bindColumnPDOStatement::bindColumn — 绑定一列到一个 PHP 变量(PHP
- 然后我们在Interactive Python prompt中测试了一下:>>> import subprocess &n
- 在python中,用pandas处理数据非常方便。但是有时候从其他地方读取数据时,会有异常值需要处理。比如,我们要从excel读取数据然后调
- 前言常见的图像任务通常需要把照片统一成相同的格式,所以此文章正是为了统一格式而生,常见的主要有cv2和PIL.Image的相关操作,照片格式
- 1 前言在 Java 和 js 中,lambda箭头函数是十分常见的操作,这种表达方式在使用时非常的简便。在python的语法中也有应用场景