我正在尝试将文件内容读入列表。但是,文件内容可能包含一些非ASCII字符。我在读取时使用了“ utf-8”编码,并且在插入列表时也对读取的每一行进行了编码。当我尝试打印列表时,它仍然显示非ASCII格式的字符。我希望它使用纯字符串格式,以便我可以执行一些字符串操作,例如find。 任何帮助将不胜感激。
file = temp.txt
contents = 欧盟委员会。 (2005)。多元化业务案例-工作场所的良好做法。卢森堡:欧洲共同体官方出版物办公室 Hardmeier,Sibylle和Vinz,Dagmar。 (2007)。多样性和交叉性。波兰政治家协会。女性政治。 Zeitschriftfürfeministische Politikwissenschaft,16(1),23-33 Kahlert,Heike。 (2003)。性别主流化-Hochschulen-Anleitung zumqualitätsbewusstenHandeln。 Opladen:Leske + Budrich
已编写代码-
import os
import io
f = io.open(os.path.join(path,"temp.txt"),mode="r",encoding="utf8")
lines = [line.encode('utf-8').rstrip('\n') for line in f]
print lines
答案 0 :(得分:0)
使用encoding="utf8"
打开并读取文件时,它已经为您解码。您后面的line.encode('utf-8')
仅用于使其成为bytearray
,而不再是纯文本。删除.encode('utf-8')
,就可以了。