python修改txt部分內容,並保存的思路:
1.打開txt文件和緩存文件;
2.for循環遍歷txt文件每行的內容;
3.在遍歷中找到要修改的內容;
4.找到要修改的內容后進行替換,替換成新內容;
5.替換成新內容后,寫進緩存文件(.bak文件);
6.全部寫進緩存文件后,把原來的txt文件刪除;
7.緩存文件更名為原來txt文件名字。
就這樣,借用緩存文件作為空杯子,把修改的內容先放進空杯子,空杯子裝了東西后再貼上原來txt文件的名字,就變成了想要的結果。
代碼如下:
import os
def alter(file,old_str,new_str):
:param file: 文件路徑
:param old_str: 需要替換的字符串
:param new_str: 替換的字符串
with open(file, "r", encoding="utf-8") as f1,open("%s.bak" % file, "w", encoding="utf-8") as f2:
for lin in f1:
print(lin)
if old_str in lin:
lin = lin.replace(old_str, new_str)
f2.write(lin)
os.remove(file)
os.rename("%s.bak" % file, file)
alter(r"E:\abc\1.txt", "a", "b")#將"E:\abc"路徑的1.txt文件把所有的a改為b
