Python read_csv 报错:‘gbk‘ codec can‘t decode byte 0xb4 in position 8: illegal multibyte sequence

在我们使用pandas.read_csv()读取文件时 经常会遇到UnicodeDecodeError 的错误

我遇到的主要有两种:

UnicodeDecodeError: 'gbk' codec can't decode byte 0xb4 in position 8: illegal multibyte sequence

或者

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbc in position 2: invalid start byte

尝试过改encoding="gbk",encoding="utf-8"或者GB2312、gbk、ISO-8859-1的方法,有时候能够起效果,有时候不行

介绍一种最有效的方法​​​​​​

1.找到csv文件–>右键–>打开方式–>记事本

2.打开记事本之后,在右下角可以看到文件的默认编码格式为ANSI,选择头部菜单的“文件–>另存为”,

3.选择编码下拉框,选择需要的编码格式UTF-8,重新保存即可

4.使用 read_csv('./test.csv', encoding="utf-8") 即可

下面我遇到过错误可以尝试的解决办法如下(推荐使用上面的,下面的有时候也不行):

1. csvdata = pd.read_csv(file, keep_default_na=False, encoding="gbk")

报错:

UnicodeDecodeError: 'gbk' codec can't decode byte 0xb4 in position 8: illegal multibyte sequence

解决:将 encoding="gbk" 改为encoding="utf-8" 或者删掉

2. csvdata = pd.read_csv(file, keep_default_na=False)

报错:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbc in position 2: invalid start byte

解决:加上 encoding="gbk" 试试看

对你有用的话 点个赞吧 哈哈哈哈哈哈

你可能感兴趣的:(python)