2017-03-06 21 views
2

AnacondaをWindows 10マシンにインストールしました(Python 2.7.12 | Anaconda 4.2.0(64ビット)|) ファイルからテキストを読み取る際に問題が発生しています。 以下のコードと出力をご覧ください。ファイルの実際のテキストが必要です。ファイルを文字列に読み込む

ありがとうございます!

出力:

['\xff\xfeT\x00h\x00i\x00s\x00', 
    '\x00i\x00s\x00', 
    '\x00a\x00', 
    '\x00t\x00e\x00s\x00t\x00.\x00', 
    '\x00', 
    '\x00', 
    '\x00', 
    '\x00T\x00h\x00i\x00s\x00', 
    '\x00i\x00s\x00', 
    '\x00a\x00', 
    '\x00t\x00e\x00s\x00t\x00'] 

コード:

try:  
    with open('test.txt', 'r') as f:   
     text = f.read() 
except Exception as e: 
    print e 
    print text.split() 

あるtest.txt:私は、ファイルを開くためにioモジュールを使用して最高の運を持っていた

This is a test. 

This is a test 
+0

ありがとうございました。ファイル内のテキストは、encoding = "Unicode"を使用していました。 Ansiに変更され、今は正常に動作します。 – user5579185

+0

あなたのニーズに最もよく合った回答を得た場合は、その回答を受け入れたものとして自由に記入してください。 – Ouroborus

答えて

2

明示的なエンコーディング。

import io 
with io.open(FILE, 'r', encoding='utf-16') as f: 
    job = f.read() 
+0

ありがとうございました!これは正常に動作します。 – user5579185

0

文字エンコーディングに問題があります。ファイルはUTF-8ではなくUTF-16でエンコードされます。 openを使用する代わりに、次のコードを使用します。または、ユニコードのサポートがはるかに優れているPython3に切り替えます。

関連する問題