方法一:(占内存)
全部把文件读进内存进行修改。
f_name ="D:/联系方式2.txt" old_str =‘乔一菲‘ new_str =‘刚亮‘ f =open(f_name,‘r+‘) str =f.read() print(str) str2=str.replace(old_str,new_str) print(str2) f.close()
方法二:(占硬盘)
边读边修改。
打开旧文件,用循环逐行地读,同时,往新文件逐行写。
import os f_name ="D:/联系方式.txt" f_new_name= "%s.new"%f_name old_str =‘乔亦菲‘ new_str =‘刚亮‘ f =open(f_name,‘r‘) f_new=open(f_new_name,‘w‘) for line in f: if old_str in line: line =line.replace(old_str,new_str) f_new.write(line) f.close() f_new.close() os.rename(f_new_name,f_name) #注意:windows下会报错,要注意先检查文件名