Python文件批量重命名工具:Python经典实战案例07

本篇为Python文件批量重命名工具实战案例,专为办公人群打造!教你用Python从零实现一个高效的文件批量重命名工具,支持自定义前缀、序号排序、关键词替换,新手能快速掌握os模块的文件操作,大幅提升办公效率!

Python文件批量重命名工具功能流程图

图1:工具核心功能与操作流程

一、工具功能说明

这是Python高效办公领域最实用的实战项目,基于Python内置os模块开发,无需额外安装库,支持自定义前缀、序号排序、关键词替换,可重命名任意文件夹下的所有文件,操作简单、高效实用,是办公必备的Python小工具:

  • 自定义文件前缀:如「Python笔记_」「照片_」「报告_」等
  • 自定义起始序号:如从1、100开始编号,支持3位/4位补0格式
  • 指定文件夹路径:可重命名任意本地文件夹下的文件
  • 自动保留原文件后缀,不破坏文件格式,兼容所有文件类型
  • 处理非法路径、文件夹不存在等异常,自动提示错误
  • 支持预览重命名结果,确认后再执行,避免误操作
  • 支持关键词替换,批量替换文件名中的指定字符

二、完整代码实现

以下为完整可运行代码,注释覆盖核心逻辑,零基础小白可直接复制到PyCharm/VS Code运行:

# 基于os模块的文件批量重命名工具
import osdef batch_rename(folder_path, prefix=”file_”, start_num=1, replace_old=””, replace_new=””):
“””
批量重命名指定文件夹下的所有文件
:param folder_path: 文件夹路径
:param prefix: 文件前缀,默认file_
:param start_num: 起始序号,默认1
:param replace_old: 需替换的旧关键词
:param replace_new: 替换后的新关键词
“””
# 检查文件夹是否存在
if not os.path.isdir(folder_path):
print(f” 错误:文件夹 {folder_path} 不存在!”)
return False# 获取文件夹下所有文件(排除子文件夹)
files = [f for f in os.listdir(folder_path) if os.path.isfile(os.path.join(folder_path, f))]
if not files:
print(” 文件夹内无文件,无需重命名!”)
return True# 预览重命名结果
print(“\n 重命名预览:”)
print(“-” * 60)
rename_list = []
for idx, old_name in enumerate(files, start=start_num):
# 分离文件名和后缀
name_part, ext_part = os.path.splitext(old_name)
# 关键词替换
if replace_old and replace_old in name_part:
name_part = name_part.replace(replace_old, replace_new)
# 新文件名:前缀 + 序号 + 后缀(序号补0,如001、002)
new_name = f”{prefix}{idx:03d}{ext_part}”
rename_list.append((old_name, new_name))
print(f”{old_name} → {new_name}”)
print(“-” * 60)# 确认是否执行
confirm = input(“\n确认执行重命名?(y/n):”).lower()
if confirm != ‘y’:
print(” 已取消重命名操作!”)
return True# 执行重命名
success_count = 0
for old_name, new_name in rename_list:
old_path = os.path.join(folder_path, old_name)
new_path = os.path.join(folder_path, new_name)
try:
os.rename(old_path, new_path)
success_count += 1
except Exception as e:
print(f” 重命名失败:{old_name} → {new_name},错误:{str(e)}”)print(f”\n 重命名完成!成功重命名 {success_count} 个文件”)
return Truedef main():
“””主程序,处理用户输入”””
print(“=” * 60)
print(” 文件批量重命名工具 v1.0″)
print(” 功能:自定义前缀+序号+关键词替换,批量重命名文件”)
print(“=” * 60)

# 获取文件夹路径
folder_path = input(“\n请输入要重命名的文件夹路径:”).strip()
# 获取前缀
prefix = input(“请输入文件前缀(默认file_):”).strip() or “file_”
# 获取起始序号
try:
start_num = int(input(“请输入起始序号(默认1):”).strip() or “1”)
except ValueError:
print(” 序号输入错误,默认使用1″)
start_num = 1
# 获取关键词替换
replace_old = input(“请输入需替换的旧关键词(留空则不替换):”).strip()
replace_new = input(“请输入替换后的新关键词(留空则不替换):”).strip()

# 执行重命名
batch_rename(folder_path, prefix, start_num, replace_old, replace_new)

if __name__ == “__main__”:
main()

Python文件批量重命名工具代码运行效果

图2:控制台运行效果演示

三、运行效果演示

运行代码后,在控制台输入文件夹路径、前缀、序号等参数,即可完成批量重命名,以下为完整运行效果:

==================================================
文件批量重命名工具 v1.0
功能:自定义前缀+序号+关键词替换,批量重命名文件
==================================================
请输入要重命名的文件夹路径:D:\Test\Photos
请输入文件前缀(默认file_):照片_
请输入起始序号(默认1):1
请输入需替换的旧关键词(留空则不替换):IMG_
请输入替换后的新关键词(留空则不替换):旅行_ 重命名预览:
————————————————————
IMG_123.jpg → 照片_001.jpg
IMG_124.png → 照片_002.png
IMG_125.jpeg → 照片_003.jpeg
————————————————————确认执行重命名?(y/n):y
重命名完成!成功重命名 3 个文件

四、核心知识点总结

  • os模块核心用法:os.listdir()获取文件列表,os.rename()执行重命名,os.path.isdir()判断文件夹合法性
  • 路径处理技巧:os.path.join()拼接路径,os.path.splitext()分离文件名和后缀,避免路径错误
  • 序号格式化:{idx:03d}实现3位补0,生成001、002格式的序号,文件排序更整齐
  • 预览确认机制:先展示重命名结果,用户确认后再执行,避免误操作导致文件损坏
  • 异常处理:捕获重命名异常、路径错误,保证程序稳定运行,不崩溃
  • 关键词替换:用str.replace()批量替换文件名中的指定字符,适配复杂重命名需求

Python文件批量重命名工具应用场景

图3:办公应用场景展示

五、扩展功能建议

掌握基础版系统后,可尝试扩展以下功能,进一步提升工具实用性:

  • 按文件时间排序重命名:用os.path.getmtime()获取文件修改时间,按时间顺序编号
  • 批量修改文件后缀:支持批量修改文件后缀,如将.txt改为.md
  • 图形化界面(GUI):用Tkinter打造可视化界面,适合非技术人员使用
  • 批量重命名子文件夹:递归遍历子文件夹,批量重命名所有层级的文件
  • 撤销重命名功能:记录重命名日志,支持一键撤销操作,避免误操作

六、常见问题解答

在使用工具的过程中,新手常遇到以下问题,这里统一解答:

  • Q:Windows路径输入错误怎么办?
    A:文件夹路径可直接复制文件夹地址栏路径,Windows路径用\\或/均可,程序自动适配
  • Q:序号补0位数可以修改吗?
    A:可以,将{idx:03d}修改为{idx:04d},即可生成4位序号(0001),适合大量文件
  • Q:如何避免误操作?
    A:工具自带预览功能,执行前会展示重命名结果,确认后再执行,避免误操作
  • Q:支持批量重命名照片吗?
    A:完全支持,可自定义前缀、序号,批量重命名照片、文档、视频等所有类型的文件

小贴士:
1. 本文是「Python实战案例10篇技术专栏」的第07篇,聚焦Python高效办公核心知识点
2. 工具基于Python内置os模块,无需额外安装库,打开即用,兼容性强
3. 多动手修改代码、扩展功能,是提升Python编程能力的最佳方式
4. 后续可学习更多Python办公自动化工具,大幅提升办公效率

本文是Python实战案例10篇技术专栏的第07篇,专为办公人群打造的Python文件批量重命名工具教程。
更多Python官方学习资源,可参考Python官方中文教程,这是Python学习的权威参考依据。

本文为「小白编程笔记」原创 · Python高效办公实战系列 | 未经授权,禁止转载

文章标签:
Python文件批量重命名工具
Python办公自动化
Python实战案例
os模块文件操作
Python入门项目

2人评论了“Python文件批量重命名工具:Python经典实战案例07”

  1. Pingback: Python 实战案例:10 篇经典技术专栏全目录 - 小白 编程 笔记

  2. Pingback: Python 实战案例:10 篇经典技术专栏全目录,零基础从入门到实战 - 小白 编程 笔记

发表评论

滚动至顶部
渝公网安备50022402001073号  |  渝ICP备2026004448号   © 2026 小白编程笔记