批量修改文件名称
- 运行效果
- 解析
运行效果
执行后 36266郜一凡200304000038内部调拨
修改为 1234一二 200304000038 四个字的
解析
输入需要修改的文件目录
输入完成后
会将文件夹中的目录的 文件名 修改为 保留文件名中间部分 修改前缀和后缀
import os
import re
import tkinter as tk
from tkinter import messageboxdef rename_pdf_files(folder_path, new_prefix, new_suffix):# 遍历指定文件夹中的所有文件for filename in os.listdir(folder_path):if filename.endswith('.pdf'):# 使用正则表达式匹配文件名中的中间部分match = re.search(r'(\d+).*?(\d+)', filename)if match:# 提取中间部分middle_part = match.group(2)# 构建新的文件名new_filename = f"{new_prefix}{middle_part}{new_suffix}.pdf"# 旧文件的完整路径old_file_path = os.path.join(folder_path, filename)# 新文件的完整路径new_file_path = os.path.join(folder_path, new_filename)try:# 重命名文件os.rename(old_file_path, new_file_path)print(f"已将 {filename} 重命名为 {new_filename}")except Exception as e:print(f"重命名 {filename} 时出错: {e}")def start_renaming():folder_path = entry.get()if not os.path.exists(folder_path):messagebox.showerror("错误", f"你输入的路径 {folder_path} 不存在,请检查后重新输入。")returnnew_prefix = '1234一二'new_suffix = '保留规则'rename_pdf_files(folder_path, new_prefix, new_suffix)messagebox.showinfo("完成", "文件重命名操作已完成。")# 创建主窗口
root = tk.Tk()
root.title("PDF 文件重命名")
root.geometry("400x400")# 创建提示标签
label = tk.Label(root, text="请输入文件所在路径:")
label.pack(pady=20)# 创建输入框
entry = tk.Entry(root, width=50)
entry.pack(pady=10)# 创建开始按钮
button = tk.Button(root, text="开始重命名", command=start_renaming)
button.pack(pady=20)# 运行主循环
root.mainloop()