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