Python 读取csv文件时报错:UnicodeDecodeError: ‘utf-8‘ codec can‘t decode byte 0xd0 in position 0:invalid

问题描述:我在读取csv文件时 python报了如下错误

或者报了以下错误:UnicodeDecodeError: 'gbk' codec can't decode byte 0xb1 in position 5: illegal multibyte sequence

目录

问题引出:

错误示范如下:

解决方案如下:


问题引出:

我先创建的xlsx 或者 xls文件,然后再改成以csv为后缀的文件,最后在python里读取失败。

错误示范如下:

①直接通过新建方式->创建xls工作表 或者 xlsx工作表。

 

 ③直接进行改名:

执行后,python会报以下错误:UnicodeDecodeError: 'gbk' codec can't decode byte 0xb1 in position 5: illegal multibyte sequence

加入encoding='utf-8'也提示报错:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xd0 in position 0: invalid continuation byte

原因:这两者文件 直接进行转化的话,由于xlsx 或者 xls文件的格式与csv的格式编码不一样,导致解码错误。excel以ANSI格式打开,不会做编码识别。

解决方案如下:

1、更换创建方式

①创建文本txt:目的是为了后续改成csv文件后编码格式相同。

 ②修改后缀为csv

 ③

运行之后 未报错 成功解决√ 

2、直接打开原文件再另存为csv

打开创建的xlsx文件或者xls文件,选择另存为->文件类型选择“CSV(逗号分隔)”即可创建正常编译过的csv文件。

详细步骤如下:

①点击“文件”选择“另存为”再选择其他格式。(或直接快捷键F12进行文件另存为)

②文件类型选择CSV即可

 以上是本人的总结经验,如有错误请批评指正!

  • 24
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Pandas_007

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值