2016-11-29 10 views
0

私はPythonで新しい行にテキストを追加しようとしていますが、最後の文が終わるのと同じ行に直接追加し続けます。私は '\ n'を追加しようとしましたが、2つの空行が生成されます。例えば;pythonはファイルの新しい行に追加します

text = 'hello there' 

with open('hello.txt', 'ab') as temp_file: 
    temp_file.write('\n' + text) 

上記の3回実行すると、

# empty line 
# empty line  
hello there 
hello there 
hello there 

空行を残すことなく、次の改行にテキストを追加する方法はありますか?私は空の行を削除するために別のwith open関数を書くことができますが、よりクリーンでコンパクトな方法があるかどうかを見たいと思っていました。ありがとう。

+0

あなたは窓を使用していますか?どのエディタを使用して結果を表示していますか? –

+1

'temp_file.write(text + '\ n')'のような 'text'の後に改行を追加しようとしましたか?これは 'print'関数/ステートメントの動作に最も似ています。 –

+0

これはPython 2の質問ですが、Python 3では動作しません。私は空の行が1つしかなく、次にテキストが期待通りにしかありません。あなたは何を正確に達成したいですか?あなたが3コール後に期待している出力は何ですか? –

答えて

-1

なぜテキストファイルをバイナリとして開くのですか?

open('hello.txt', 'ab')

おそらくbを削除すると役立ちます。

+1

これはpython 2.7とlinuxでは関係ありません。それはコメントでなければなりません。 –

関連する問題