python报错'gbk' codec can't decode byte 0xad in position 30: illegal multibyte sequence

本文详细介绍了在使用Python处理文件时遇到的编码错误,并提供了两种有效的解决方案:一是使用更广泛的“gb18030”编码打开文件;二是将文件重新保存为“UTF-8”格式,再以“UTF-8”编码打开。这些方法有效避免了因编码不匹配导致的文件打开失败。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

敲代码的时候,用python处理数据,打开文件的时候报上面那个错,参考了一下别的博主的博文,发现是所要处理的文件不是“gbk”格式的,但却用gbk格式去打开这个文件,所以打开文件错误,那篇博文中,博主说有人提出方法,通过二进制的方法打开就可以避免报错,然而我尝试了一下,发现二进制打开后处理数据会遇到问题,于是继续查阅资料,发现可以用一下这种方法来读取文件:
方法1:打开文件的gbk格式编码不足以打开文件,我们用范围更广的“gb18030”格式来打开文件,代码如下:

fp=open(‘path’,‘mode’,encoding=‘gb18030’)

当时尝试了这种方式也不行,想到要处理的文件是汉字文件,就重新保存了一下文件格式为‘UTF-8’,然后再用encoding=‘UTF-8’的格式打开了一下,问题解决。
方法2:

fp=open(‘path’,‘mode’,encoding=‘UTF-8’)

参考博文链接:https://blog.youkuaiyun.com/lqzdreamer/article/details/76549256

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

许倾墨

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

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

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

打赏作者

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

抵扣说明:

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

余额充值