正常情況我們想要僅對檔案某一行的內容進行修改,而不改變其他內容,在原檔案的基礎上不能修改,因為當我們對原檔案進行寫操作時,如果原檔案裡面有內容,就會清空,在這種情況下,只能對檔案進行替換性修改:即重新建立一個檔案,把原檔案的內容按行復制到新檔案裡,當複製到要修改的那一行時,就用我們需要的內容來替換原有的內容
eg:我們要修改原檔案的第五行內容為“hello,小雙雙”,實現原始碼如下:
# 替換性修改檔案內容 f_read = open(`小雙雙`, `r`, encoding=`utf8`) # 讀 原檔案 f_write = open(`小雙雙1`, `w`, encoding=`utf8`) # 寫 新檔案 number = 0 for line in f_read: # 迴圈讀取原檔案的內容並寫入新建的檔案裡 number += 1 if number == 5: line = `hello,小雙雙 ` # 加一個換行符 f_write.write(line) f_read.close() f_write.close()
原檔案內容:
昨夜寒蟬不住鳴。
驚回千里夢,已三更。
起來獨自繞階行。
人悄悄,簾外月朧明。
欲將心事付瑤琴。
知音少,絃斷有誰聽。
修改後的內容:
昨夜寒蟬不住鳴。
驚回千里夢,已三更。
起來獨自繞階行。
人悄悄,簾外月朧明。
hello,小雙雙
知音少,絃斷有誰聽。