问题描述:

python内置编码方式为unicode编码,当读取一个非unicode编码文本时,python将报错,如:

情况一:

当文本为 utf-8 编码,直接读取将报错:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbd in position 4: invalid start byte

Traceback (most recent call last):File "C:/Users/dan/Desktop/python/codec.py", line 2, in <module>print(f.read())File "C:\Python37\lib\codecs.py", line 322, in decode(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbd in position 4: invalid start byte

情况二:

当文本为 gbk 编码,直接读取将报错:

UnicodeDecodeError: 'gbk' codec can't decode byte 0xbd in position 8: incomplete multibyte sequence

Traceback (most recent call last):File "C:/Users/dan/Desktop/python/codec.py", line 2, in <module>print(f.read())
UnicodeDecodeError: 'gbk' codec can't decode byte 0xbd in position 8: incomplete multibyte sequence

解决方式:

以对应的编码方式读取文本即可

情况一:

加入编码方式 “encoding='utf-8'”

with open('./case1.txt', 'r', encoding='utf-8') as f:print(f.read())

情况二:

加入编码方式 “encoding='gbk'”

附加:

以下代码可以自动识别文本编码方式并进行文本读取,适用于需要多次读取文本,且文本的编码方式各不一样时:

import chardet  # 编码识别模块
with open('./case.txt', 'rb') as f: # ’rb’模式按照二进制位进行读取,不会将读取的字节转换成字符ecd = chardet.detect(f.read())['encoding']  # 识别所读文本编码
with open('./case.txt', 'r', encoding=ecd) as f:    # 以对应编码方式读取文本read = f.read()print(read)

【debug】UnicodeDecodeError: codec can't decode byte 0xbd in position 4: invalid start byte相关推荐

  1. python UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbd in position 0: invalid start byte

    UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbd in position 0: invalid start byte 我遇到该错误的地方 ...

  2. python读取字符报错:‘utf-8‘ codec can‘t decode byte 0xbd in position 2: invalid start byte

    python读取字符报错:'utf-8' codec can't decode byte 0xbd in position 2: invalid start byte 原因 解决方法 原因 utf-8 ...

  3. 因为编码产生的报错:UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xbd in position 0: invalid start byte

    发生此报错多半是因为编码. 我这里是在读取txt文本的时候发生的报错,如下: 修改编码为gbk后,就可以正常读取了:

  4. 【异常】 ‘ascii‘ codec can‘t decode byte 0xe8 in position 2: ordinal not in range(128)

    [异常] 'ascii' codec can't decode byte 0xe8 in position 2: ordinal not in range(128) 参考文章: (1)[异常] 'as ...

  5. UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc7 in position 0: invalid continuation byte

    [写在前面] 今天在做说stm32和服务器之间的通信时因为编码格式问题导致了一些错误做个记录: 测试时搭载在云服务器上的python socket通讯模块数据接收部分代码如下: receive_dat ...

  6. UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xff in position 0: invalid start byte ,mac

    从网上查了很多种方法*均对我的bug不是很奏效,可能因为我的.txt文件是.xls文件转的,且我要读取的文件只有6个,遂采取最brute的方法:把所有文件里的内容copy出来,放到新文件里即可. *方 ...

  7. UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xff in position 41: invalid start byte

    文章目录 一.遇到报错 二.错误分析与解决 一.遇到报错 笔者在进行代码复现的时候,在数据读取时遇到报错: UnicodeDecodeError: 'utf-8' codec can't decode ...

  8. mycli: UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xa8 in position 52: invalid start byte

    文章目录 错误描述 错误分析 解决方案 错误描述 windows 上 python 环境运行 mycli 出现报错 (linux 类似错误应该也有参考价值): UnicodeDecodeError: ...

  9. UnicodeDecodeError: 'utf8' codec can't decode byte 0xb1 in position 0: invalid start byte

    在Python处理字符编码时出现如下错误: UnicodeDecodeError: 'utf8' codec can't decode byte 0xb1 in position 0: invalid ...

最新文章

  1. linux mysql 无法识别,Linux下MySQL 5.7.23无法远程连接解决方案
  2. vu项目中按F5刷新element菜单没有根据路由匹配菜单解决办法
  3. cef谷歌内核浏览器获取cookie值并保存
  4. 在阿里云做前端,是种怎样的体验?
  5. python函数封装计算n运算_在Python里面怎么可以运算出999999999**999999999,求思路?...
  6. android 个推打开页面,个推android客户端点击跳到指定activity
  7. 数据结构 关键路径的个人理解
  8. RHEL5_x64上安装oracle 11.2
  9. 获取路由器后台账号密码
  10. 安装linux出现分区出错,找到了linux分区顺序错乱修复方法
  11. 腾讯云支付平台配置掌优云音响
  12. PowerDesigner安装教程
  13. 能否构成三角形的条件代码_中考三角形专题复习:一般三角形知识全面梳理
  14. 台达PLC与紫金桥监控组态软件的连接
  15. 业务层有什么作用java_请问业务层方法是抛出一个异常好还是返回一个结果更好...
  16. 多维时序 | MATLAB实现CNN-LSTM多变量时序预测
  17. php strtok函数,strtok函数的用法是什么
  18. 如何使用计算机读文本,如何使用StrokeIt
  19. Android电池信息(Battery information)
  20. 劳动节 | 耕耘美好,创造不凡

热门文章

  1. 编码程序教程_如何从编码教程到构建自己的项目
  2. 比特币未来几个月怎么样_您需要了解的关于比特币技术的未来
  3. gitter 卸载_最佳Gitter渠道:PHP
  4. 适合初学者的安卓开源项目_开源世界中初学者的颠簸之旅
  5. 回顾:我们从2次主要API中断中汲取的经验教训
  6. visual foxpro 程序员指南_好程序员云计算培训分享云计算中SOA是什么?
  7. virtualbox手动挂载共享文件夹
  8. error while loading shared libraries: libiconv.so.2: cannot open shared object file
  9. Python高级——魔法属性和方法
  10. 单进程select版-TCP服务器(python 版)