当前位置:   article > 正文

python 读取文件时报错UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0xaf_unicodedecodeerror: 'gbk' codec can't decode byte

unicodedecodeerror: 'gbk' codec can't decode byte 0xaa in position 27: illeg

文章目录


UnicodeDecodeError: 'gbk' codec can't decode byte 0xaf in position 63: illegal multibyte sequence
  • 1

或者

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb5 in position 20: invalid start byte
  • 1

一般是在读取文件时,解码汉字或特殊符号出现了问题(Decode)。

这是因为open的默认编码方式是没有指定的,所以运行时编译器用gbk去解析utf-8编码,或者编译器选用utf-8去解析gbk编码
在这里插入图片描述

所以只要你指定编码方式就行了:

  1. 先确定文件的编码方式,比如文件是用UTF-8编码的。
    PS:utf-8和gbk都能编码汉字,所以汉字不一定就是gbk啊,用不同编码解析就会出现这个问题,要看看文件到底是啥编码方式。
  2. 指定encoding的值,如fp = open('file.txt', 'r', encoding='utf-8')

关于如何指定默认的python文件的编码方式,就不用特意指定:
在开头打上:(都一样)

# -*- coding: utf-8 -*-
  • 1
# coding=utf-8
  • 1
# coding: utf-8
  • 1

查看是什么编码方式

import sys
print(sys.getdefaultencoding())
  • 1
  • 2
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/151068
推荐阅读
相关标签
  

闽ICP备14008679号