读文件编码问题|UnicodeDecodeError: 'gbk' codec can't decode byte 0x8a in position 45: illegal multibyte seq

读文件代码:

# 读取一个文件,逐行调用返回结果,并加工
fpath = 'c:\\Users\\user\\python\\EastMoney\\10.txt'
rfile = open(fpath)                    # 打开文件,默认为只读r 
for rline in rfile.readlines():             # 读取文件内容,赋给一个字符串列表,每个字符串是文本中的每行
    rline = rline.strip()
    rts = getBaiduNlpMotion(rline)
    print(rts)

rfile.close()

执行报错:

UnicodeDecodeError: 'gbk' codec can't decode byte 0x8a in position 45: illegal multibyte sequence

解决办法:

1、编码设置
第一行没有设置编码如下:

# _*_ coding:utf-8 _*_

2、处理数据时没有转码,在open函数上增加参数。

with open("data.txt",'r',encoding='UTF-8') as data:

通过方法2 修改程序第二行如下解决。

rfile = open(fpath,encoding='UTF-8')                    # 打开文件,默认为只读r 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值