请问我这段python代码哪里有问题?

f1=open('论语-网络版.txt','r+')f2=open('论语-提取版.txt','w+')forlinf1.readlines():list=[]forii... f1=open('论语-网络版.txt','r+')
f2=open('论语-提取版.txt','w+')
for l in f1.readlines():

list=[]
for i in l:
if i not in ['\n',' ']:
list.append(i)
if list!=[]:
f2.writelines(''.join(list)+'\n')
f1.close()
f2.close()
每次都报错,报错内容如下:
UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 4: illegal multibyte sequence
展开
 我来答
pieryon
2019-09-16 · 知道合伙人数码行家
pieryon
知道合伙人数码行家
采纳数:14411 获赞数:166865
获取软件设计师高级职称 万达金融最佳创新奖

向TA提问 私信TA
展开全部
你程序里面有中文,要在开头指定编码格式
追问

python3中用的是Unicode编码,不是可以向所有的编码进行兼容吗?而且我头部已经指定了编码


追答
那是读取文件的字符编码问题

把open的那两句改成这样:

open('论语-网络版.txt','r+',encoding='UTF-8')
淘个车位
2019-09-16 · TA获得超过269个赞
知道答主
回答量:463
采纳率:21%
帮助的人:36.4万
展开全部
修改一下文件编码啊
追问

我一开始就指定过了

追答
你读取文件的编码并没有指定
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
伟大的哲思
2019-09-16 · TA获得超过170个赞
知道答主
回答量:1216
采纳率:41%
帮助的人:50.9万
展开全部
当然是你的txt文档编码有问题
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式