2016-10-23 10 views
-3

これは本当に簡単な質問ですが、なぜそれが起こったのか分かりません。テキストの体全体を印刷しようとしているが、次のコードは、それの半分以下程度印刷しています:同様の問題に直面したPythonはファイル全体を読み取っていません

textfile = open("helloworld.txt") 
body = textfile.read() 
print body 

textfile = open("helloworld.txt") 
for line in textfile: 
    line = line.rstrip()  
    print line 
+3

これらの戦略は有効です。これ以上の情報がなければ、我々は解決策を提供することはできません。 – TigerhawkT3

+0

一見すると適切に見えます。問題はファイルであり、コードではありません – agg3l

+0

ファイルを投稿できますか? –

答えて

-1

- 私は普通に問題を発見しました悪いUTF-8エンコーディングが原因です。この悪いデータが見つかると、Pythonはクラッシュします。

したがって、私は2つの方法の1は、それが

1)Pythonコードすなわち

猫Some_File.txt前変換克服するために使用します| iconv -f utf-8 -t utf-8 -c | python my_py_code.py

-cスイッチは、悪いUTF-8文字を無視することを意味します。

0

私の前に提出した上記のコードは全く意味がありません、なぜあなたはUTF-8で再びそれをエンコードするために、UTF-8をデコードするだろうことができますのpythonだけ

ifp=open('Some_File.txt','r') 
all_text='' 
for line in ifp: 
    all_text=all_text+line.decode('utf-8','errors'='Ignore').encode('utf-8') 
print(''+all_text) 
ifp.close() 

希望を使用して

2)?

忘れてしまいましたが、試してみましょう。

は、ここに私の提案print open('FileLocation').read()

だ。これは、Pythonの問題よりもOSの問題のより多くの可能性があります。 osが特定のデータを好きでない場合、その文字をターミナル/ cmdに置き換えるかどうかを指定することができます。

私は個人的にLinuxを使用しています。この問題はメモリ使用量にさらに影響する可能性がありますが、エラーが発生することはありません。ドキュメントをサンプルすることができますか?私や他の人が解決策を見つけるために試してみることができますか?

関連する問題