2016-05-08 12 views
0

単純なテキストファイルでさえPythonにインポートしたいと思います。たとえば、example.txtの内容は次のとおりです。Pythonで単純なtxtファイルをインポートする場合でもUnicodeDecodeError

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なし)としてファイルを明示的に保存してください。 BOMはASCIIコーデックには含まれていませんが、UnicodeErrorが発生します。

希望すると便利です。

+0

ビンゴ!ありがとうございました! – CephBirk

関連する問題