with open(self.path, 'r') as test:for line in test:pass

代码如上,出现错误:UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position ...

UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 9: ...

或者是

UnicodeDecodeError: 'gbk' codec can't decode byte 0xb3 in position 9: illegal multibyte sequence

解决方法

主要原因是因为编码的问题,可能是因为0x80这个字节在gbk编码中没有这个字符,可能原字符是两个字节,在gbk里被解析成了一个字节,导致字符不存在。解决方法有两个,一个是二进制读取,一个是改编编码方式:

方法一:二进制读取

 with open(self.path, 'rb') as test:for line in test:pass

但是这样在读取的是中文文本的时候还可能会产生其他的错误:

TypeError: a bytes-like object is required, not 'str'

方法二:改变打开文件的编码方式

 with open(self.path, 'r', encoding='utf-8') as test:for line in test:pass

或者

 with open(self.path, 'r', encoding='utf-8-sig') as test:for line in test:pass

这个utf-8-sig亲测好用,屡试不爽,非常nice

Python读取文件时出现UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position ...相关推荐

  1. Python读取文件时出现UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position xx: 解决方案

    Python读取文件时出现UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position xx: 解决方案 参考文章: (1)Py ...

  2. python 读取文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multib

    python 读取文件时报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multib ...

  3. python读取文件时提示“UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xad in position 1264: illegal multi

    UnicodeDecodeError: 'gbk' codec can't decode byte 0xad in position 1264: illegal multibyte sequence ...

  4. python 读取文件时报错UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xaf

    文章目录 UnicodeDecodeError: 'gbk' codec can't decode byte 0xaf in position 63: illegal multibyte sequen ...

  5. UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal multibyte sequence

    python读取文件时提示"UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 205: illegal m ...

  6. 解决Python打开文件报错UnicodeDecodeError: 'gbk' codec can't decode byte

    用Python打开文件时报错: UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 10: illegal multi ...

  7. UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position 19: illegal multibyte sequence

    python 读取文本文件,报出gbk问题 问题如下: UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 34: i ...

  8. Python报错UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position 10

    Python报错(字节编码gbk) UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 10: illegal mul ...

  9. 解决Python报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 658: illegal multibyte

    解决Python报错–UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 658: illegal multibyte ...

  10. ‘UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position 2: illegal multibyte sequence’

    import matplotlib.pyplot as pltplt.rcParams['font.sans-serif'] = ['KaiTi'] with open(r'E:\pythoncoda ...

最新文章

  1. 数梦工场联手阿里云 推出大数据一体机
  2. 吴晓波“美好 Plus”携手神策数据,让数据连接文化与商业
  3. SQL Server数据库的查询、排序
  4. fcm模糊聚类matlab实例_模糊控制
  5. 线性地址到物理地址的映射
  6. VC菜菜鸟-创建一个简单的多线程任务
  7. VB 写文件关联程序
  8. D3D自定义的设备丢失对象
  9. python时间库date和datetime
  10. (转)栈与堆栈的区别
  11. crossdomain.xml跨越
  12. OpenCV学习笔记——图像平滑处理
  13. Maven下载和安装
  14. win10环境redis集群搭建(非主从模式)
  15. 联通光猫型号: 吉比特GPON/4+1+WiFi2.5
  16. Docker微服务-镜像构建交付和使用rancher进行容器创建管理
  17. android密码设成星号,如何将密码字段更改为星号而不是点
  18. 计算机网络技术双机互联,快速实现双机互联的几种方案
  19. 中断系统的相关知识(二)(可位寻址、不可位寻址)
  20. 电子学:第011课——实验 10:晶体管开关

热门文章

  1. 推荐的MyBatis传参方式List、数组等
  2. Android Studio 第五十三期 - 自定义EditText密码键盘
  3. raid及mdadm命令之一(含shell显示字体颜色等)
  4. JFinal EhCachePlugin的学习笔记
  5. pyton 编写脚本检测两台主机之间的通信状态,异常邮件通知
  6. 双流国际机场公交线路到凤凰御庭
  7. Windows2003 Server下尝试360安全卫士6.0
  8. 希望这篇文章对理解C#的对象模型有所帮助
  9. 自己搭建了一个简单实用的Web版记事本
  10. 51NOD 1623 完美消除 数位DP