Python3 批量替換文本內容
示例:
# coding:utf8 import os; def reset(): i = 0 path = r"H:\asDemo\workdemo\awesome-android-ui-master\pages\\"; filelist = os.listdir(path) # 該文件夾下所有的文件(包括文件夾) for files in filelist: # 遍歷所有文件 i = i + 1 Olddir = os.path.join(path, files); # 原來的文件路徑 if os.path.isdir(Olddir): # 如果是文件夾則跳過 continue; filename = os.path.splitext(files)[0]; # 文件名 filetype = os.path.splitext(files)[1]; # 文件擴展名 filePath=path+filename+filetype alter(filePath, "/art/", "../art/") def alter(file,old_str,new_str): """ 將替換的字符串寫到一個新的文件中,然后將原文件刪除,新文件改為原來文件的名字 :param file: 文件路徑 :param old_str: 需要替換的字符串 :param new_str: 替換的字符串 :return: None """ with open(file, "r", encoding="utf-8") as f1,open("%s.bak" % file, "w", encoding="utf-8") as f2: for line in f1: if old_str in line: line = line.replace(old_str, new_str) f2.write(line) os.remove(file) os.rename("%s.bak" % file, file) if __name__=='__main__': reset()