用chatgpt生成python脚本可高效批量重命名文件:支持加前缀、按excel映射、删前后缀、跨文件夹替换、视频与字幕匹配等场景,操作只需30秒写代码+双击运行,但务必先备份。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

你手头有几百个杂乱的MP4、PDF或Excel文件,需要统一加前缀、删后缀、按表格映射重命名,或者根据子文件夹名批量替换关键词——手动一个一个改要花两小时,还容易漏、错、重名。用ChatGPT生成定制化Python脚本,30秒写完,双击运行,全部搞定。
给所有文件统一加前缀
打开ChatGPT,输入提示词:“你是一个Python编程专家,请写一段代码:把文件夹‘C:\资料\待整理’里所有文件名前面都加上【2026夏训】前缀,不修改扩展名,跳过已带该前缀的文件。”
复制返回的代码,粘贴进VS Code或记事本,保存为rename_prefix.py;把文件路径改成你自己的实际路径;在终端中执行python rename_prefix.py。
【注意:运行前务必先备份原文件夹】 这一步不可逆,一旦重命名出错,没有Ctrl+Z可撤回。
按Excel表格映射重命名(最常用)
这是知识库中高频场景:视频文件名和Excel第二列标题一致,需按第一列序号+“ - ”+原名重命名。操作分三步走:
- 确保Excel文件(如chess.xlsx)和所有MP4文件在同一文件夹下,且Excel第1列为新序号、第2列为当前文件名(不区分大小写,忽略标点);
- 向ChatGPT发送完整指令:“读取D:\象棋\how to play chess\chess.xlsx,提取第2列作为匹配键(只保留英文字符并转小写),第1列作为新前缀;遍历同目录下所有.mp4文件,用正则清洗文件名后匹配;匹配成功则重命名为‘第1列内容 - 原文件名’;每步输出日志。”
- 运行生成的脚本——它会自动跳过无匹配项的文件,并打印“重命名:xxx.mp4 为 04 - xxx.mp4”这样的确认行。
这一步操作起来很简单,直接把文件拖进去就行。但若Excel第2列含空格或中文括号,而MP4文件名是纯英文,就无法匹配——必须提前统一清洗逻辑,否则脚本跑完一半才发现全没动。
批量删前后缀+固定后缀
方法一:删开头固定字符串+删括号内容+加统一后缀
对F盘“北交所上市公司全部发明专利”文件夹里的.xls文件,告诉ChatGPT:“去掉文件名开头的【企查查】专利-,删除所有()及其中文字,去掉.xls,末尾统一加_发明专利列表_20230813.xls。”
方法二:仅保留数字编号再重命名
比如文件名是“001_会议纪要_v2.pdf”“007_合同终稿_2024.pdf”,只需提取开头三位数字,重命名为“001.pdf”“007.pdf”。提示词中明确写:“用re.search(r'^(\d{3})_', file_name)提取前三位数字,构造new_name = match.group(1) + '.pdf'。”
这一步的关键是正则表达式不能写成r'^\d+'——那样会匹配到“1001_”开头的四位数,导致编号错乱。
跨文件夹:按子文件夹名重命名内部文件
适用场景:D:\英语学习图书配套资源\亲子英语游戏书,这本最好玩 下有多个子文件夹,每个子文件夹里是若干Track开头的MP3,你想把每个MP3里的“Track”替换成所在子文件夹的名字。
向ChatGPT发送指令:“遍历D:\英语学习图书配套资源\亲子英语游戏书,这本最好玩下的所有子目录;对每个子目录内的.mp3文件,将文件名中的‘Track’字符串替换为该子目录的文件夹名;保留原扩展名;跳过不含‘Track’的文件。”
生成的脚本会逐层进入子文件夹,安全执行替换。如果某个子文件夹名叫“Game 1”,而MP3原名是“Track01.mp3”,就会变成“Game 101.mp3”——注意这里不是拼接,而是字符串替换,所以不会多出“01”。
根据视频名重命名字幕文件
方法一:按S01E后的数字精确匹配
视频是Abadas_S01E04_Cloud[http://www.oiabc.com].rmvb,字幕是4.srt,目标是重命名为Abadas_S01E04_Cloud[http://www.oiabc.com].srt。提示词中必须强调:“提取S01E后的数字并转为整数(自动去前导零),与字幕文件名纯数字部分比对。”
方法二:模糊匹配(当字幕名含字母时)
比如字幕是“ep04_en.srt”,视频是“Abadas_S01E04_Cloud.rmvb”,这时就要让ChatGPT用re.search(r'ep(\d+)', caption) 和 re.search(r'S01E(\d+)', video) 分别提取数字再比对。
这一步最容易踩坑:如果字幕文件夹里混着“README.txt”或“4.srt.bak”,脚本默认会报错退出——必须在提示词里加一句“跳过非.srt文件”,否则运行中断。











