读文件代码:
# 读取一个文件,逐行调用返回结果,并加工
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