import os """@@@@@设置路径@@@@@""" # 设置根文件夹路径,将这里的路径更改为您要操作的根文件夹路径 root_folder = "/Users/admin/Downloads/2022年度领导班子总结和干部个人述职报告的(首批人名)" # 打开新旧文件名对应的文本文件 """@@@@@设置新旧对比文件名@@@@@""" with open("list.txt", "r", encoding="utf-8") as file: rename_dict = {} # 逐行读取文件,解析旧文件名和新文件名的对应关系,保存到字典中 for line in file: """ @@@@@ 设置分隔符 @@@@@ """ old_name, new_name = line.strip().split(" ") # 分离每行的旧文件名和新文件名 rename_dict[old_name] = new_name # 将旧文件名作为键,新文件名作为值,保存到字典中 # 递归遍历文件夹 for root, dirs, files in os.walk(root_folder): for filename in files: old_file_path = os.path.join(root, filename) # 构建旧文件的完整路径 if filename in rename_dict: # 检查当前文件名是否有对应的新文件名 new_filename = rename_dict[filename] # 获取新文件名 new_file_path = os.path.join(root, new_filename) # 构建新文件的完整路径 try: os.rename(old_file_path, new_file_path) # 使用 os.rename() 函数将旧文件名替换为新文件名 print(f"Renamed '{filename}' to '{new_filename}'") log1 = open("log.txt", "a", encoding="utf-8") log1.write(f"{filename},{new_filename},成功\n") except FileExistsError as err: count = 1 base, ext, = os.path.splitext(new_filename) while True: new_filename = f"{base} ({count}){ext}" new_file_path = os.path.join(root, new_filename) try: os.rename(old_file_path, new_file_path) print(f"Renamed '{filename}' to '{new_filename}'{err}") log2 = open("log.txt", "a", encoding="utf-8") log2.write(f"{filename},{new_filename},{err}序号增加成功\n") break except FileExistsError as eerr: count += 1 print(f"Skipped '{filename}' because '{new_filename}' already exists.") log3 = open("log.txt", "a", encoding="utf-8") log3.write(f"{filename},{new_filename},错误:{eerr}\n") print("Renaming completed.")