其他分享
首页 > 其他分享> > TOUnicodeDecodeError: 'utf-8' codec can't decode byte 0xd6 in position 0: invalid coC

TOUnicodeDecodeError: 'utf-8' codec can't decode byte 0xd6 in position 0: invalid coC

作者:互联网

TOUnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xd6 in position 0: invalid coC问题解决

这俩天在尝试捣鼓一下用python写一个文件检索功能,遇到一个问题。

file1 = open('D:/PythonStudy/a闲观数据分析.txt','r',encoding='utf-8')
filecontent = file1.read()
print(filecontent)

常规结果是输出一个txt里的内容,结果是报了
在这里插入图片描述
字面上讲: 'utf-8’编解码器无法解码字节0xd6在位置0:invalid co,找寻问题

https://blog.csdn.net/qq_35892623/article/details/82941473
看到了这篇文章
文章作者提到了三个办法,因为作者写的太繁琐,我这边也是学习到了,简单写就是三个方法

第一种:

第一行加:# -- coding: utf-8 --

第二种:

引用处设置默认编码格式

# coding: utf-8

第三种:

使用中文处将中文unicode编码

python3以后第二种方式。

结果一条都行不通,对于我目前的要求来说
所以寻求根源,就得解决为什么会报这种错误,那问题还是出在这段代码上

encoding=‘utf-8’

https://www.runoob.com/python/att-string-encode.html
跑到官网先理解一遍它的原理
在这里插入图片描述
没想到官网上解释的也是这个情况,难道官网坑人?又看到官网上转码的是英文啊!!

str = “this is string example…wow!!!”;

他的转码内容是这个,而我的是中文,那么UTF-8便不对,回头复习一遍,国内目前常用的编码类型
三个 GB2312-80 , GBK ,GB18030这三种,所以我都尝试了一遍
在这里插入图片描述
成功!!!!还是编码器类型的问题,临时补充一下,根据目前编码使用频率来看,GBK是很常用的,相对于GBK,GB2312-80便汉字占有数少了不少,GB18030呢个人认为是GBK的增强版,它收入汉字70000余个,属于超大型编码
所以说在GBK运用情况下还是有问题的时候,使用 GB18030可能会帮助你解决部分乱码问题~

标签:编码,GB18030,utf,0xd6,TOUnicodeDecodeError,GBK,invalid
来源: https://blog.csdn.net/weixin_36872297/article/details/98208580