【debug】UnicodeDecodeError: codec can't decode byte 0xbd in position 4: invalid start byte
问题描述:
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相关推荐
- 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 我遇到该错误的地方 ...
- 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 ...
- 因为编码产生的报错:UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xbd in position 0: invalid start byte
发生此报错多半是因为编码. 我这里是在读取txt文本的时候发生的报错,如下: 修改编码为gbk后,就可以正常读取了:
- 【异常】 ‘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 ...
- UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc7 in position 0: invalid continuation byte
[写在前面] 今天在做说stm32和服务器之间的通信时因为编码格式问题导致了一些错误做个记录: 测试时搭载在云服务器上的python socket通讯模块数据接收部分代码如下: receive_dat ...
- UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xff in position 0: invalid start byte ,mac
从网上查了很多种方法*均对我的bug不是很奏效,可能因为我的.txt文件是.xls文件转的,且我要读取的文件只有6个,遂采取最brute的方法:把所有文件里的内容copy出来,放到新文件里即可. *方 ...
- UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xff in position 41: invalid start byte
文章目录 一.遇到报错 二.错误分析与解决 一.遇到报错 笔者在进行代码复现的时候,在数据读取时遇到报错: UnicodeDecodeError: 'utf-8' codec can't decode ...
- mycli: UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xa8 in position 52: invalid start byte
文章目录 错误描述 错误分析 解决方案 错误描述 windows 上 python 环境运行 mycli 出现报错 (linux 类似错误应该也有参考价值): UnicodeDecodeError: ...
- 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 ...
最新文章
- linux mysql 无法识别,Linux下MySQL 5.7.23无法远程连接解决方案
- vu项目中按F5刷新element菜单没有根据路由匹配菜单解决办法
- cef谷歌内核浏览器获取cookie值并保存
- 在阿里云做前端,是种怎样的体验?
- python函数封装计算n运算_在Python里面怎么可以运算出999999999**999999999,求思路?...
- android 个推打开页面,个推android客户端点击跳到指定activity
- 数据结构 关键路径的个人理解
- RHEL5_x64上安装oracle 11.2
- 获取路由器后台账号密码
- 安装linux出现分区出错,找到了linux分区顺序错乱修复方法
- 腾讯云支付平台配置掌优云音响
- PowerDesigner安装教程
- 能否构成三角形的条件代码_中考三角形专题复习:一般三角形知识全面梳理
- 台达PLC与紫金桥监控组态软件的连接
- 业务层有什么作用java_请问业务层方法是抛出一个异常好还是返回一个结果更好...
- 多维时序 | MATLAB实现CNN-LSTM多变量时序预测
- php strtok函数,strtok函数的用法是什么
- 如何使用计算机读文本,如何使用StrokeIt
- Android电池信息(Battery information)
- 劳动节 | 耕耘美好,创造不凡
热门文章
- 编码程序教程_如何从编码教程到构建自己的项目
- 比特币未来几个月怎么样_您需要了解的关于比特币技术的未来
- gitter 卸载_最佳Gitter渠道:PHP
- 适合初学者的安卓开源项目_开源世界中初学者的颠簸之旅
- 回顾:我们从2次主要API中断中汲取的经验教训
- visual foxpro 程序员指南_好程序员云计算培训分享云计算中SOA是什么?
- virtualbox手动挂载共享文件夹
- error while loading shared libraries: libiconv.so.2: cannot open shared object file
- Python高级——魔法属性和方法
- 单进程select版-TCP服务器(python 版)