我想读取一个包含德语而不仅仅是字符的文件.我发现我可以这样做
>>> import codecs
>>> file = codecs.open('file.txt','r', encoding='UTF-8')
>>> lines= file.readlines()
Run Code Online (Sandbox Code Playgroud)
当我尝试在Python IDLE中运行我的工作但当我尝试从其他地方运行它时,这是有效的,但是没有给出正确的结果.有个主意吗?
Che*_*wie 21
您需要知道编码文本的字符编码.如果您事先不知道,可以尝试使用chardet模块进行猜测.首先安装它:
$ pip install chardet
Run Code Online (Sandbox Code Playgroud)
然后,例如以二进制模式读取文件:
>>> import chardet
>>> chardet.detect(open("file.txt", "rb").read())
{'confidence': 0.9690625, 'encoding': 'utf-8'}
Run Code Online (Sandbox Code Playgroud)
那么:
>>> import codecs
>>> import unicodedata
>>> lines = codecs.open('file.txt', 'r', encoding='utf-8').readlines()
Run Code Online (Sandbox Code Playgroud)