當我們讀取文件中內容后,如果想要修改文件中的某一行或者某一個位置的內容,在python中是沒有辦法直接實現的,如果想要實現這樣的操作只能先把文件所有的內容全部讀取出來,然后進行匹配修改后寫入到新的文件中。
實例代碼如下所示:
# 打開舊文件 f = open('file_text.txt','r',encoding='utf-8') # 打開新文件 f_new = open('file_text_bak.txt','w',encoding='utf-8') # 循環讀取舊文件 for line in f: # 進行判斷 if "Good day is good day" in line: line = line.replace('Good day is good day','hello,yanyan') # 如果不符合就正常的將文件中的內容讀取並且輸出到新文件中 f_new.write(line)
f.close()
f_new.close()
備注:
1. 舊文件的內容
hello,world
yanyan is good girl
Good day is good day
2. 新文件在代碼執行后的內容
hello,world
yanyan is good girl
hello,yanyan
3. 需要注意的是權限的問題,對於舊文件必須要有讀取權限,對於新的文件必須要有寫入權限