2016-05-08 35 views
0

我想甚至将一个简单的文本文件导入到Python中。例如,这里的内容为example.txtUnicodeDecodeError即使在Python中导入简单的txt文件

hello 
my 
friend 

很简单。然而,当我尝试导入该文件,并阅读:

f = open('example.txt') 
f.read() 

我得到以下错误:

Traceback (most recent call last): 
    File "<pyshell#1>", line 1, in <module> 
    f.read() 
    File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/encodings/ascii.py", line 26, in decode 
return codecs.ascii_decode(input, self.errors)[0] 
UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 0: ordinal not in range(128) 

这是什么问题的根源?显然,文件中没有任何非ascii字符。

我在IDLE,终端(Mac OSX)和Rodeo上试过这个,并且都得到了类似的问题。

我对Python很陌生,担心我可能在安装时搞砸了一些东西。多年来,我已经下载了各种版本,直接从Python,Anaconda,macports等,我想知道各种来源是不是玩得很好......

Python 3.5.1 OSX 10.11.4。

回答

1

也许你的文件是用编码UTF-8 with BOM(字节顺序标记)保存的。尝试将文件明确地保存为UTF-8(不含BOM)。尽管ASCII编解码器中未包含BOM,但会导致UnicodeError

希望这会有所帮助!

+0

宾果!谢谢! – CephBirk