【发布时间】:2016-12-30 15:57:23
【问题描述】:
这是我要读的那行:
with open('u.item', 'w') as demofile:
demofile.write(
"543|Mis\xe9rables, Les (1995)|01-Jan-1995||"
"http://us.imdb.com/M/title-exact?Mis%E9rables%2C%20Les%20%281995%29|
"0|0|0|0|0|0|0|0|1|0|0|0|1|0|0|0|0|0|0\n"
)
这就是我的阅读方式
import unicodecsv as csv
def moviesToRDF(csvFilePath):
with open(csvFilePath, 'rU') as csvFile:
reader = csv.reader(csvFile, encoding='utf-8', delimiter= '|')
for row in reader:
print row
moviesToRDF("u.item")
这是我得到的错误:
UnicodeDecodeError: 'utf8' codec can't decode byte 0xe9 in position 3: invalid continuation byte
引发错误的值是:
Misérables, Les
请问我做错了什么?
(我使用的是 2.7 python)
【问题讨论】:
-
你确定它是 utf-8 编码的吗?
-
@Two-BitAlchemist 我不确定,请问我怎么知道?
-
我提取了给您带来问题的一行。它没有编码为 UTF-8,而是使用的是 Latin-1 数据。
-
@MartijnPieters 我发现并写了答案:)
-
以后,请在此处包含数据,而不是在外部下载中。 Stack Overflow 期望问题具有持久的价值;外部下载具有不同的生命周期,使您的问题对未来的访问者毫无用处。
标签: python python-2.7 unicode