这是我的密码
for line in open('u.item'):
#read each line
每当我运行此代码时,都会出现以下错误:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 2892: invalid continuation byte
我试图解决这个问题并在open()中添加一个额外的参数,代码如下所示
for line in open('u.item', encoding='utf-8'):
#read each line
但同样的错误。 那我该怎么办!请帮忙。
您的文件实际上不包含utf-8编码的数据,它包含一些其他编码。找出编码是什么,并在
open
调用中使用它。例如,在Windows-1252编码中,
0xe9
将是字符é
。对我来说,ISO 8859-1也很管用,哈哈哈,如果使用语音识别API
示例:
根据Mark Ransom的建议,我找到了解决这个问题的正确编码。编码是“ISO-8859-1”,因此用
open('u.item', encoding = "ISO-8859-1")
替换open("u.item", encoding="utf-8")
将解决此问题。相关问题 更多 >
编程相关推荐