python - "for line in..."导致 UnicodeDecodeError : 'utf-8' codec can't decode byte

标签 python python-3.x character-encoding

这是我的代码,

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

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

最佳答案

作为 suggested by Mark Ransom ,我找到了解决该问题的正确编码。编码为 "ISO-8859-1" , 所以替换 open("u.item", encoding="utf-8")open('u.item', encoding = "ISO-8859-1")会解决问题的。

关于python - "for line in..."导致 UnicodeDecodeError : 'utf-8' codec can't decode byte,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19699367/

相关文章:

python - 我应该如何在 python 模块中执行导入而不污染其命名空间?

python - 连接对象不可调用 - SQLAlchemy/pymysql

python - 已指定检测参数(argparse)

c - 如果您知道字符编码,您将如何从 C 语言的文本文件中读取,然后将其显示在控制台上?

MYSQL:在同一个“单元格”中插入繁体中文和简体中文

python - 排序对象列表python。对象与我正在分类的对象属于不同的类别

mongodb - 为什么我不能直接分配 ListField 的值?

python-3.x - 场感知分解的向量化实现

python-3.x - 如何解决此 ValueError : only 2 non-keyword arguments accepted sklearn python

php - 编码 hell 。 MySQL、PHP 和 utf-8