当前位置: 首页 > 知识库问答 >
问题:

“对于行输入…”UnicodeDecodeError中的结果:“utf-8”编解码器无法解码字节

秋博容
2023-03-14

这是我的代码,

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

无论何时运行此代码,都会出现以下错误:

UnicodeDecodeError:'utf-8'编解码器无法解码字节0xe9在位置2892:无效的延续字节

我试图解决这个问题,并在open()中添加了一个额外的参数。代码如下所示:

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

但它再次给出了同样的错误。那我该怎么办?

共有3个答案

仲浩歌
2023-03-14

您的文件实际上不包含UTF-8编码的数据;它包含一些其他编码。找出该编码是什么,并在open调用中使用它。

例如,在Windows-1252编码中,0xe9将是字符é

糜运良
2023-03-14

以下内容对我也很有用。国际标准化组织

例子:

file = open('../Resources/' + filename, 'r', encoding="ISO-8859-1")
田谦
2023-03-14

正如Mark Ransom所建议的,我找到了解决该问题的正确编码。编码是“ISO-8859-1”,因此将打开(“u.item”,encoding=“utf-8”)替换为打开(“u.item”,encoding=“ISO-8859-1”)将解决此问题。

 类似资料: