【发布时间】:2018-05-27 04:17:14
【问题描述】:
我想读取一个还包含德语而不仅仅是字符的文件。我发现我可以这样做
>>> import codecs
>>> file = codecs.open('file.txt','r', encoding='UTF-8')
>>> lines= file.readlines()
当我尝试在 Python IDLE 中运行我的工作时,这是有效的,但是当我尝试从其他地方运行它时不会给出正确的结果。有想法吗?
【问题讨论】:
-
你用的是什么版本的python?
-
这取决于保存文件的编码。如果不是 UTF-8,iso8859-1 可能是个不错的猜测。
-
python3.1.我们真的如何看待我们使用的当前版本?
-
@indiag,尝试使用
open('file.txt', 'rb').readlines()以二进制模式读取文件,然后使用print(repr(line))获取您知道包含德语字符的行以及您期望的行。这应该有助于我们确定编码是什么。 -
@indiag,我突然想到
readlines()在二进制模式下可能不起作用,尝试print(repr(open('file.txt', 'rb').read())),然后发布全部或部分输出。