【发布时间】:2018-04-14 11:46:22
【问题描述】:
我想阅读一堆法语文本文档,并将每个文本文档的内容存储为列表中的一个项目,以便稍后计算 td-idf 分数(通过计算单词等)。
这就是我开始我的代码的方式,它的重点是将每个文档的全文作为一个字符串单独读取:
import os, re
import glob
import operator
file_names = glob.glob(os.path.join("/Corpus", u'*'))
documents=["" for x in file_names]
files=["" for x in file_names]
for infile in (glob.glob(os.path.join("/Corpus", u'*'))):
file = (open(infile,"r",encoding="utf-8"))
data = file.read()
print (data)
当我执行此操作时,他能够打印一些文本,但随后出现以下错误:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe2 in position 10: invalid continuation byte
我显然是用 utf-8 编码打开文件,我不明白我在做什么错。
另外,如果我有任何关于如何将包含文档中所有文本的变量data 存储在列表项中的建议,我将不胜感激。以下解决方案无效:
documents.append(data)
谢谢
【问题讨论】:
标签: python text unicode utf-8 encode