你是不是也有过这种崩溃时刻:
下载了一堆网课视频,文件名全是乱码;相机里的照片想按日期整理,手动改名改到手指发麻;项目里的临时文件乱七八糟,想批量改成统一格式却毫无头绪?
别慌!今天咱们用Python写一个超简单的脚本,10分钟搞定批量文件重命名,新手也能直接上手,复制代码就能用!
一、先搞懂:这个脚本能干啥?
咱们今天写的工具,能帮你实现这些需求:
- 给文件夹里所有文件批量加前缀/后缀(比如给所有图片加上“旅行照片_”)
- 把文件按序号重命名(比如 笔记_01.txt 笔记_02.txt …)
- 过滤指定类型的文件(只重命名 .jpg 或 .pdf 文件)
- 再也不用对着几十上百个文件一个个点了!
二、超简单步骤,跟着做就行
1. 准备工作
你只需要两样东西:
1. 电脑上安装了Python(没装也没关系,文末给你附了新手安装教程)
2. 把要重命名的文件,都放到同一个文件夹里(比如 D:\我的文件 )
2. 直接上代码!
复制下面这段代码,新建一个 .py 文件(比如 批量重命名.py ),粘贴进去就行:
import os
def batch_rename_files(folder_path, prefix="", suffix="", start_num=1, file_types=None):
"""
批量重命名文件
:param folder_path: 要处理的文件夹路径
:param prefix: 文件名前缀
:param suffix: 文件名后缀(不是文件扩展名!)
:param start_num: 序号起始数字
:param file_types: 要处理的文件类型列表,比如 ['.jpg', '.pdf'],None表示所有文件
"""
# 切换到目标文件夹
os.chdir(folder_path)
# 获取文件夹里的所有文件
files = [f for f in os.listdir() if os.path.isfile(f)]
# 如果指定了文件类型,就过滤文件
if file_types:
files = [f for f in files if os.path.splitext(f)[1].lower() in file_types]
# 按文件名排序,避免乱序
files.sort()
# 开始批量重命名
for index, old_name in enumerate(files, start=start_num):
# 拆分文件名和扩展名
name, ext = os.path.splitext(old_name)
# 拼接新文件名
new_name = f"{prefix}{index:02d}{suffix}{ext}"
# 重命名
os.rename(old_name, new_name)
print(f"已重命名: {old_name} → {new_name}")
# ------------------- 这里改成你自己的设置 -------------------
if __name__ == "__main__":
# 你的文件夹路径(Windows用双反斜杠,比如 "D:\\网课视频")
target_folder = "D:\\我的文件"
# 文件名前缀(比如 "旅行照片_")
file_prefix = "笔记_"
# 文件名后缀(比如 "_2026")
file_suffix = ""
# 序号从几开始
start_number = 1
# 只处理哪些文件类型(比如 ['.txt', '.pdf'],None表示所有文件)
target_types = ['.txt']
# 运行函数
batch_rename_files(
folder_path=target_folder,
prefix=file_prefix,
suffix=file_suffix,
start_num=start_number,
file_types=target_types
)
print("✅ 所有文件重命名完成!")
三、怎么用?30秒改好就能跑
你只需要修改代码里最后那部分“设置区”,改成你自己的需求:
1. target_folder :改成你要处理的文件夹路径(Windows用双反斜杠,比如 "D:\\网课视频" ,Mac直接用路径就行)
2. file_prefix :改成你想要的前缀,比如 "旅行照片_"
3. start_number :序号从几开始,默认是1
4. target_types :如果只想处理txt文件,就写 ['.txt'] ;想处理所有文件,就改成 None
举个例子:
如果你的文件夹里有 会议记录.txt 项目计划.txt 需求文档.txt ,设置成:
target_folder = "D:\\工作文件"
file_prefix = "2026Q1_"
start_number = 1
target_types = ['.txt']
运行后就会变成:
2026Q1_01.txt 2026Q1_02.txt 2026Q1_03.txt ,整齐又好管理!
四、避坑小提醒(新手必看!)
1. 先备份!先备份!先备份! 第一次用的时候,先复制一份文件副本到别的文件夹,万一出错也不怕。
2. 文件夹路径别写错,Windows用户一定要用双反斜杠 \\ ,或者直接用正斜杠 / 。
3. 脚本只能处理同一文件夹里的文件,子文件夹里的文件不会被修改,不用担心误操作。
五、10分钟搞定,从此告别重复劳动
就这么几行代码,解决的是你平时可能要花半小时甚至一小时的麻烦事。编程的乐趣不就是这样吗?不用学复杂的理论,写个小脚本就能让电脑帮你干活,省下的时间喝杯奶茶不香吗?
下次再遇到批量改文件名、整理文件的需求,直接掏出这个脚本,5分钟搞定!
💬 你平时用Python解决过什么重复工作?评论区聊聊你的小技巧,或者告诉我你想搞定什么场景,下次给你写个一键脚本!