"for line in..."导致UnicodeDecodeError:'utf-8'编解码器无法解码字节。

71 浏览
0 Comments

"for line in..."导致UnicodeDecodeError:'utf-8'编解码器无法解码字节。

这是我的代码:

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

每次运行这段代码时,都会出现以下错误:

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

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

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

但是仍然出现相同的错误。那我该怎么办?

admin 更改状态以发布 2023年5月21日
0
0 Comments

以下方法对我也起作用了。使用ISO 8859-1编码方式可以节省很多时间,特别是在使用语音识别API时。

例如:

file = open('../Resources/' + filename, 'r', encoding="ISO-8859-1")

0
0 Comments

正如Mark Ransom所建议的,我找到了解决那个问题的正确编码方式。编码方式是"ISO-8859-1",因此将open("u.item", encoding="utf-8")替换为open('u.item', encoding = "ISO-8859-1")即可解决问题。

0