我一直在試圖用python重寫一個文本文件,在那裏我去了一個文件, 抓住每一行,追加一個字符串到行上,然後重寫 新添加的行到文本文件。我遇到的問題是這個 新構建的文本文件格式不正確。該文件包含 行,其中每行包含三個數字,用逗號分隔。如果我的文件 如下所示:無法刪除換行符
57.88, 58.45, 45.31
57.88, 58.45, 45.31
57.88, 58.45, 45.31
我要添加字符「A」的線,那麼我需要的文件 看起來像這樣:
57.88, 58.45, 45.31, a
57.88, 58.45, 45.31, a
57.88, 58.45, 45.31, a
相反時,文件格式,如本
57.88, 58.45, 45.31
,a
57.88, 58.45, 45.31
,a
57.88, 58.45, 45,31
,a
有趣的是(當我在兩者的emacs和gedit中打開),線的數量仍然是相同的(3),而不管格式的的文件。我對此很困惑,有些沮喪。以下是我用來重寫該文件的代碼 。我的python技能真的需要 ,所以它可能是我需要使用的一些明顯的python函數,我還沒有聽說過 。基本上,一旦我確定的文件路徑存在,我稱之爲 改寫子程序,如下:
def getLines(filePath):
move(filePath, filePath+"~")
destination = open(filePath, "w")
source = open(filePath+"~", "r")
for line in source:
destination.write(line.strip("\n") + ",a\n"))
source.close()
destination.close()
我重新格式化你的一些文字。讓我知道如果我做錯了。 – mgilson 2013-03-18 18:51:40
我無法複製此內容。在添加',a \ n'之前,您正確地刪除了每行的最後一個'\ n'。你確定你正在查看正確的文件嗎? – 2013-03-18 18:51:45
@DJV - OP正在使用*不同*文件。 – mgilson 2013-03-18 18:52:25