【E-06】UnicodeDecodeError: 'gbk' codec can't decode byte 0x93 in position 2740: illegal multibyte sequence

使用python的时候经常会遇到文本的编码与解码问题,其中很常见的一种解码错误如题目所示,

1、编码设置

第一行没有设置 # _*_ coding:utf-8 _*_

2、后面处理数据时没有转码下,如open函数上 处理如下:with open("data.txt",'r',encoding='UTF-8') as data:

3、网络的其他解法:将'gbk'换成'utf-8'也适用。

(1)、首先在打开文本的时候,设置其编码格式,如:open('1.txt',encoding='gbk');

(2)、若(1)不能解决,可能是文本中出现的一些特殊符号超出了gbk的编码范围,可以选择编码范围更广的'gb18030',如:open('1.txt',encoding='gb18030');

(3)、若(2)仍不能解决,说明文中出现了连'gb18030'也无法编码的字符,可以使用'ignore'属性进行忽略,如:open('1.txt',encoding='gb18030',errors='ignore');

(4)、还有一种常见解决方法为open('1.txt').read().decode('gb18030','ignore')

 

注意:若是使用了库函数报这种错误,建议将库函数单独拷贝出来,再进行上述修改,否则会出现修改不成功的现象。

   

参考文献:https://blog.csdn.net/shijing_0214/article/details/51971734

原文地址:https://www.cnblogs.com/yifanrensheng/p/13381945.html