已解决UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xa1 in position 0: invalid start byte



已解决(Python读取csv文件报错)UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xa1 in position 0: invalid start byte











报错代码



粉丝群一个小伙伴想用pandas读取csv文件,但是发生了报错代码如下


import pandas as pd
import numpy as np

df = pd.read_csv('test.csv')
print(df)



报错信息:


UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xa1 in position 0: invalid start byte





报错翻译



报错内容翻译

编码解码错误:“utf-8”编解码器无法解码位置0中的字节0xa1:起始字节无效



报错原因



报错原因:CSV文件不是UTF-8进行编码,而是用gbk进行编码的。





解法方法



解决方法(1):

  • 1.选中csv文件 -》鼠标右键 -》打开方式 -》 选择记事本

  • 2.打开文件选择 “文件” -》"另存为“,我们可以看到默认编码是:ANSI
    在这里插入图片描述

  • 3. 选择UTF-8点击保存,再使用再次运行程序就不会报错了

解决方法(2):修改代码的编码格式为gbk


import pandas as pd
import numpy as np

df = pd.read_csv('test.csv',encoding="gbk")
print(df)

再次运行成功:


在这里插入图片描述



帮忙解决



本文已收录于:《告别Bug》专栏

本专栏用于记录学习和工作中遇到的各种疑难Bug问题,以及粉丝群里小伙伴提出的各种问题,文章形式:报错代码 + 报错翻译 + 报错原因 + 解决方法,包括程序安装、运行程序过程中等等问题,订阅专栏+关注博主后如遇到其他问题可私聊帮忙解决!!!


版权声明:本文为yuan2019035055原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。