关于UnicodeDecodeError: 'gbk' codec can't decode byte的解决办法

2023-11-12

问题描述

UnicodeDecodeError: ‘gbk’ codec can’t decode byte 0xae in position 199: illegal multibyte sequence

这个《机器学习实战》朴素贝叶斯算法中遇到的问题。

解决方案

  1. \email\ham中的23.txt中第二段多了一个®(使用记事本打开显示的是“?”),导致解码失败,删除‘®’之后便可以继续执行。
  2. 使用windows-1252编码的方式读取txt,open txt文档时加一条encoding='windows-1252'
    open('email/spam/%d.txt' % i, encoding="windows-1252").read()

问题分析

UnicodeDecodeError解释为Unicode的解码(decode)出现错误了,也就当前正在处理某种编码类型的字符串,是想要将该字符串去解码,变成Unicode,但是在解码的过程中发生错误了。
分别测试\email\ham\中的每一个txt文档,只有23.txt报错:

    ...: file = open('email\\ham\\23.txt')
    ...: fileRead = file.read()
    ...: wordList = bayes.textParse(fileRead)
    ...: docList.append(wordList)
    ...: fullText.extend(wordList)
    ...: classList.append(1)
    ...:
---------------------------------------------------------------------------
UnicodeDecodeError                        Traceback (most recent call last)
<ipython-input-33-598ed4b80c9a> in <module>()
      1
      2 file = open('email\\ham\\23.txt')
----> 3 fileRead = file.read()
      4 wordList = bayes.textParse(fileRead)
      5 docList.append(wordList)

UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 199: illegal
multibyte sequence

23.txt第二段(记事本打开“®”显示为“?”):
SciFinance® is a derivatives pricing and risk model development tool that automatically generates C/C++ and GPU-enabled source code from concise, high-level model specifications. No parallel computing or CUDA programming expertise is required.
使用gbk无法解码“®”,在sublime text中查看23.txt的编码方式为windows 1252,所以使用windows 1252的编码方式打开txt文档,程序便能够正常执行了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

关于UnicodeDecodeError: 'gbk' codec can't decode byte的解决办法 的相关文章

  • 如何更改 FacetGrid 中的边距标题颜色

    使用 Seaborn Facet Grids 如何仅更改边距标题的颜色 注意g set titles color red 更改两个标题 p sns load dataset penguins sns displot data p x fli
  • 如何覆盖 Django 的默认管理模板和布局

    我正在尝试覆盖 Django 的默认模板 现在只有base site html 我正在尝试更改 django 管理文本 我做了以下事情 我在我的应用程序目录中创建了一个文件夹 opt mydjangoapp templates admin
  • 如何在 Jupyter Notebook 中运行 Python 异步代码?

    我有一些 asyncio 代码在 Python 解释器 CPython 3 6 2 中运行良好 我现在想在具有 IPython 内核的 Jupyter 笔记本中运行它 我可以运行它 import asyncio asyncio get ev
  • numpy python 中的“AttributeError:'matrix'对象没有属性'strftime'”错误

    我有一个维度为 72000 1 的矩阵 该矩阵涉及时间戳 我想使用 strftime 如下所示 strftime d m y 为了得到像这样的输出 11 03 02 我有这样一个矩阵 M np matrix timestamps 我使用了
  • NumPy linalg.eig

    我有这个烦人的问题 但我还没有弄清楚 我有一个矩阵 我想找到特征向量 所以我写 val vec np linalg eig mymatrix 然后我得到了 vec 我的问题是 当我小组中的其他人对相同的矩阵 mymatrix 做同样的事情时
  • 从 Python 下载/安装 Windows 更新

    我正在编写一个脚本来自动安装 Windows 更新 我可以将其部署在多台计算机上 这样我就不必担心手动更新它们 我想用 Python 编写这个 但找不到任何关于如何完成此操作的信息 我需要知道如何搜索更新 下载更新并从 python 脚本安
  • 从sklearn PCA获取特征值和向量

    如何获取 PCA 应用程序的特征值和特征向量 from sklearn decomposition import PCA clf PCA 0 98 whiten True converse 98 variance X train clf f
  • cv2.drawContours() - 取消填充字符内的圆圈(Python,OpenCV)

    根据 Silencer的建议 我使用了他发布的代码here https stackoverflow com questions 48244328 copy shape to blank canvas opencv python 482465
  • Python 使用 Gstreamer 访问 USB 麦克风时遇到问题,以便在 Raspberry Pi 上使用 Pocketsphinx 执行语音识别

    所以Python的表现就好像它根本听不到我的麦克风发出的任何声音 问题就在这里 我有一个Python 2 7 假设使用的脚本Gstreamer通过以下方式访问我的麦克风并为我进行语音识别口袋狮身人面像 我在用着脉冲音频我的设备是树莓派 我的
  • 字符串中的注释和注释中的字符串

    我正在尝试使用 Python 和 Regex 计算 C 代码中包含的注释中的字符数 但没有成功 我可以先删除字符串以删除字符串中的注释 但这也会删除注释中的字符串 结果会很糟糕 是否有机会通过使用正则表达式来询问不匹配注释中的字符串 反之亦
  • “一旦获取切片就无法更新查询”。最佳实践?

    由于我的项目的性质 我发现自己不断地从查询集中取出切片 如下所示 Thread objects filter board requested board id order by updatedate 10 但这给我带来了实际对我选择的元素进
  • 将二维数组放入 Pandas 系列中

    我有一个 2D Numpy 数组 我想将其放入 pandas 系列 而不是 DataFrame 中 gt gt gt import pandas as pd gt gt gt import numpy as np gt gt gt a np
  • 如何在VIM中设置文件的正确路径?

    每当我击中 pwd在 vim 中命令总是返回路径C Windows system32 即使我在桌面上的 Python 文件中 所以每当我跑步时 python 命令返回 python can t open file Users myname
  • 如何在 Django 中使用基于类的视图创建注册视图?

    当我开始使用 Django 时 我几乎使用 FBV 基于函数的视图 来处理所有事情 包括注册新用户 但当我更深入地研究项目时 我意识到基于类的视图通常更适合大型项目 因为它们更干净且可维护 但这并不是说 FBV 不是 无论如何 我将整个项目
  • Flask 应用程序的测试覆盖率不起作用

    您好 想在终端的 Flask 应用程序中测试 删除路由 我可以看到测试已经过去 它说 test user delete test app LayoutTestCase ok 但是当我打开封面时 它仍然是红色的 这意味着没有覆盖它 请有人向我
  • sqlite3从打印数据中删除括号

    我创建了一个脚本 用于查找数据库第一行中的最后一个值 import sqlite3 global SerialNum conn sqlite3 connect MyFirstDB db conn text factory str c con
  • PIL - 需要抖动,但限制调色板会导致问题

    我是 Python 新手 正在尝试使用 PIL 来执行 Arduino 项目所需的解析任务 这个问题涉及到Image convert 方法以及调色板 抖动等选项 我有一些硬件能够一次仅显示 16 种颜色的图像 但它们可以指定为 RGB 三元
  • 字符串列表,获取n个元素的公共子串,Python

    我的问题可能类似于this https stackoverflow com questions 37514193 count the number of occurrences of n length not given string in
  • bs4 `next_sibling` VS `find_next_sibling`

    我在使用时遇到困难next sibling 并且类似地与next element 如果用作属性 我不会得到任何返回 但如果用作find next sibling or find next 然后就可以了 来自doc https www cru
  • 通过 Web 界面执行 python 单元测试

    是否可以通过 Web 界面执行单元测试 如果可以 如何执行 EDIT 现在我想要结果 对于测试 我希望它们是自动化的 可能每次我对代码进行更改时 抱歉我忘了说得更清楚 EDIT 这个答案此时已经过时了 Use Jenkins https j

随机推荐

  • 性能测试——结果量含义(系统吞吐量(TPS)、用户并发量)

    性能测试 首先 开发软件的目的是为了让用户使用 我们先站在用户的角度分析一下 用户需要关注哪些性能 对于用户来说 当点击一个按钮 链接或发出一条指令开始 到系统把结果已用户感知的形式展现出来为止 这个过程所消耗的时间是用户对这个软件性能的直
  • Run-Time Check Failure #2 – Stack around the variable 'a' was corrupted.

    Run Time Check Failure 2 Stack around the variable a was corrupted 今天在用VS调代码的时候 会出现这个问题 经过查找以及DEBUG 最终发现是由于建立的数组下标溢出造成的
  • 在linux上开关swap

    swapon a 会开启 etc fstab上定义的所有swap swapoff a会关闭所有swap cat proc meminfo会显示swap的情况 另外下面的命令也会显示swap swapon s Filename Type Si
  • 什么是域名,怎么买服务器

    1 域名 域名 是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称 用于在数据传 输时标识计算机的电子方位 www baidu com com是顶级域名 baidu是一级域名 www是二级域名 每个域名可以对应一个i
  • tars协议序列化分析

    引言 tars序列化过程 TARS编码协议是一种数据编解码规则 它将整形 枚举值 字符串 序列 字典 自定义结构体等数据类型按照一定的规则编码到二进制数据流中 对端接收到二进制数据流之后 按照相应的规则反序列化可得到原始数值 简单理解 TA
  • os.walk详解

    https www jianshu com p bbad16822eab python中os walk是一个简单易用的文件 目录遍历器 可以帮助我们高效的处理文件 目录方面的事情 1 载入 要使用os walk 首先要载入该函数 可以使用以
  • 关于MP3文件中找不到TAG标签的问题

    今天做项目需要上传mp3文件 在postman中测试的时候发现找不到这个mp3文件中的TAG标签 心想着不应该啊 我这是正规音频啊 如果是图片把后缀改成mp3没有TAG是肯定的 但是我这个音频为什么也没有呢 经过百度一番 初步判断有可能问题
  • xcode常用快捷键 快捷生成代码分享

    快速打印 NSLog lt text gt 快速string NSString 快速for循环 for int i 0 i lt lt max gt i lt code gt 快速setter和getter property lt type
  • STM32F103 - 配置规则通道参数 - 05 - unfinished -unfinished-unfinished

    五 配置规则通道参数 设置指定ADC的规则组通道 一个序列 采样时间 常规通道配置 ADC RegularChannelConfig ADC1 ch 1 ADC SampleTime 239Cycles5 ADC1 ADC通道 采样时间为2
  • ubuntu安装教程及docker安装容器,前后端部署

    1 0 Linux的常用命令 删除目录中的文件 rm fate txt 删除一个目录及其内容 rm r dir r 选项作用递归删除目录及其子目录中的所有内容 dir是文件夹名称 创建一个文件 touch fate txt 创建的是一个空文
  • CentoS8 安装篇十一:ngrok内网穿透工具搭建

    一 准备工作 1 外网域名 域名备案 2 服务器 有固定ip 3 服务器开放端口 80 443 4443 端口下面使用 注意与其他端口有冲突 4 域名映射 下面使用到ngrok xxx com必须映射至该服务器 5 添加泛域名映射至该服务器
  • R

    文章目录 Windows下更新R版本及Rstudio 一 更新R版本 二 Rstudio中更新R Windows下更新R版本及Rstudio 在R中安装一些包时 经常会出现包与旧版本R不兼容的问题 所以就对Windows下R的版本进行了更新
  • python数据精度问题

    优质资源分享 学习路线指引 点击解锁 知识定位 人群定位 Python实战微信订餐小程序 进阶级 本课程是python flask 微信小程序的完美结合 从项目搭建到腾讯云部署上线 打造一个全栈订餐系统 Python量化交易实战 入门级 手
  • go实现bcrypt加密

    什么是bcrypt Bcrypt 是一款加密工具 它生成的密文是60位的 而且每次加密生成的值是不一样的 MD5 加密虽然不可逆 但是它每次生成的密文是相同的 这便给暴力破解留下了余地 所以推荐使用bcrypt进行加密 简单实现 packa
  • Linux 后台运行的进程printf输出到什么地方,是否消耗内存

    分析 正常情况下printf 输出到 stdout 输出流 可以通过 freopen 改变 stdout 转向到du文件 例如 freopen test txt w stdout printf abcd 98765 会把 abcd 9876
  • 【专题5:硬件设计】 之 【48.推挽电路驱动MOS管】

    嵌入式工程师成长之路 系列文章 总目录 系列文章总目录 希望本是无所谓有 无所谓无的 这正如脚下的路 其实地上本没有路 走的人多了 也便成了路 原创不易 文章会持续更新 欢迎微信扫码关注公众号 承接 小程序 嵌入式 PC端项目开发 联系作者
  • 数据库设计——表的关系与范式

    一 表的关系 1 一对一关系 1 1 概念描述 例如 一个人只能拥有一张身份证 一张身份证也只能对应一个人 那么这里的一个人和身份证就是一对一的关系 多表之间一对一关系如何实现 两个一对一关系的表 可以在任意一方添加外键 并将外键指向另一方
  • CMake INSTALL

    2019独角兽企业重金招聘Python工程师标准 gt gt gt 原文 http blog csdn net yangfeng2014 article details 50638601 本帖子适用于初学者 StepByStep的入门CMa
  • 前端js下载zip文件异常问题解决

    目录 一 本文解决问题如下 二 原下载代码 1 ajax get 下载文件 2 下载异常图 三 成功下载的 1 JQuery 实现文件下载xhr 2 图例 引言 本人使用的ajax 下载 由于下载CSV 文本之类的没有问题 下载zip是出现
  • 关于UnicodeDecodeError: 'gbk' codec can't decode byte的解决办法

    问题描述 UnicodeDecodeError gbk codec can t decode byte 0xae in position 199 illegal multibyte sequence 这个 机器学习实战 朴素贝叶斯算法中遇到