"for line in..."导致UnicodeDecodeError:'utf-8'编解码器无法解码字节。
"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日
以下方法对我也起作用了。使用ISO 8859-1编码方式可以节省很多时间,特别是在使用语音识别API时。
例如:
file = open('../Resources/' + filename, 'r', encoding="ISO-8859-1")
正如Mark Ransom所建议的,我找到了解决那个问题的正确编码方式。编码方式是"ISO-8859-1"
,因此将open("u.item", encoding="utf-8")
替换为open('u.item', encoding = "ISO-8859-1")
即可解决问题。