2016-11-29 134 views
0

我試圖將文本追加到python中的新行,但它不斷將它添加到最後一句結束的同一行上。我嘗試添加'\ n',但它會產生兩個空行。例如;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

你使用的是Windows嗎?以及您使用哪個編輯器來查看您的結果? –

+1

你有沒有嘗試在像'temp_file.write(text +'\ n')''這樣的文本之後添加換行符?這與'print'函數/語句的行爲最爲相似。 –

+0

這是一個python 2問題,在python 3中不起作用。我只有一個空行,然後是文本,如預期的那樣。你想要達到什麼目的?你打算3次電話後的輸出是什麼? –

回答

-1

爲什麼你打開一個文本文件爲二進制

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

也許刪除b將有所幫助。

+1

在python 2.7和linux中無關緊要。這應該是一個評論。 –