Replace the file name and content in the python folder,
Example:
1. Replace the name of the folder and subfolders in a folder from OldStrDir to NewStrDir;
2. Replace the names of folders in a folder and all files in subfolders with OldStrFile to NewStrFile;
3. Replace the contents of folders in a folder and all files in subfolders with OldStrContent changed to NewStrContent;
Code:
# -*- coding: UTF-8 -*-import osimport re#replace dir namedef replaceDirName(rootDir,oldStr,newStr): for parent,dirNames,fileNames in os.walk(rootDir,topdown=False): for dirName in dirNames: if oldStr in dirName: dirNameOld = os.path.join(parent,dirName) dirNameNew = os.path.join(parent,dirName.replace(oldStr,newStr)) print(dirNameOld + ' --> ' + dirNameNew) os.rename(dirNameOld,dirNameNew) #replace file namedef replaceFileName(rootDir,oldStr,newStr): for parent,dirNames,fileNames in os.walk(rootDir): for fileName in fileNames: if oldStr in fileName: fileNameOld = os.path.join(parent,fileName) fileNameNew = os.path.join(parent,fileName.replace(oldStr,newStr)) print(fileNameOld + ' --> ' + fileNameNew) os.rename(fileNameOld,fileNameNew) #replace file content namedef replaceFileContent(rootDir,oldStr,newStr): for parent,dirNames,fileNames in os.walk(rootDir): for fileName in fileNames: fileObj = os.path.join(parent,fileName) f = open(fileObj,'r+') all_the_lines=f.readlines() f.seek(0) f.truncate() for line in all_the_lines: f.write(line.replace(oldStr,newStr)) f.close() def main(): rootDir = "D:/D" oldStr = "CustomerType" newStr = "CustomerAttr" replaceDirName(rootDir,oldStr,newStr) replaceFileName(rootDir,oldStr,newStr) replaceFileContent(rootDir,oldStr,newStr)if __name__=='__main__': main()