“用于...行”导致UnicodeDecodeError:'utf-8'编解码器无法解码字节 [英] "for line in..." results in UnicodeDecodeError: 'utf-8' codec can't decode byte

查看:101
本文介绍了“用于...行”导致UnicodeDecodeError:'utf-8'编解码器无法解码字节的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的代码,

for line in open('u.item'):
#read each line

无论何时运行此代码,它都会产生以下错误:

whenever I run this code it gives the following error:

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 2892: invalid continuation byte

我试图解决这个问题并在open()中添加一个额外的参数,代码看起来像这样;

I tried to solve this and add an extra parameter in open(), the code looks like;

for line in open('u.item', encoding='utf-8'):
#read each line

但同样会给出相同的错误。
那我该怎么办!请帮忙。

But again it gives the same error. what should I do then! Please help.

推荐答案

Mark Ransom ,我找到了解决该问题的正确编码。编码为 ISO-8859-1 ,因此替换 open( u.item,encoding = utf-8)即可。 ) open('u.item',encoding ='ISO-8859-1'))将解决此问题。

As suggested by Mark Ransom, I found the right encoding for that problem. The encoding was "ISO-8859-1", so replacing open("u.item", encoding="utf-8") with open('u.item', encoding = "ISO-8859-1") will solve the problem.

这篇关于“用于...行”导致UnicodeDecodeError:'utf-8'编解码器无法解码字节的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆