Python新手请教:如何使用Python制作文件重命名工具?

我是个美术,目前在自学 python3,为了能程序化加快工作. 最近突发奇想要做个小软件方便工作。用 PyQt5 搭建了一个 UI 框架 关于图片或文件重命名的. 因为学的还比较初级有些功能实现上还不懂怎么深入下去,所以前来咨询老哥们。 能否推荐一些类似的开源项目可以给我借鉴学习一下

UI 框架如下: 有若干分类的都有下拉菜单,一个类型在一个栏内,每个选择好对应的选项,全部选择完,各类相加一起,输入框内可以得出命名。最终在电脑上选择好需要的一个文件,点击程序上的生成键,可以自动完成指定分类的重命名. 例如 Metal_Red_01_a

UI.py 如下 https://gist.github.com/n0tsur3/a920f3f133a5693f4e5b7aeb65e3e60f


Python新手请教:如何使用Python制作文件重命名工具?

2 回复

要做一个文件重命名工具,核心就是用 os 模块来操作文件系统。下面这个脚本可以批量给当前目录下的文件添加前缀,你改改就能用。

import os

def batch_rename(directory, prefix):
    """
    给指定目录下的所有文件添加前缀
    :param directory: 目标目录路径
    :param prefix: 要添加的前缀
    """
    # 切换到目标目录
    os.chdir(directory)
    
    # 获取目录下所有文件和文件夹列表
    for filename in os.listdir('.'):
        # 跳过目录,只处理文件
        if os.path.isfile(filename):
            # 分割文件名和扩展名
            name, ext = os.path.splitext(filename)
            # 构建新文件名
            new_name = f"{prefix}{name}{ext}"
            # 重命名文件
            os.rename(filename, new_name)
            print(f"重命名: {filename} -> {new_name}")

if __name__ == "__main__":
    # 使用示例:给当前目录下所有文件添加"backup_"前缀
    batch_rename('.', 'backup_')

关键点解析:

  1. os.listdir('.') 列出当前目录所有项目
  2. os.path.isfile() 判断是否为文件(避免重命名文件夹)
  3. os.path.splitext() 分离文件名和扩展名,方便单独处理
  4. os.rename() 执行实际的重命名操作

扩展建议:

  • 想按顺序编号?加个计数器:new_name = f"{prefix}{i:03d}{ext}"
  • 想改特定类型文件?加条件判断:if filename.endswith('.txt'):
  • 想交互式操作?用 input() 让用户输入目录和前缀

这个基础框架够你折腾了,改改就能满足大部分重命名需求。


只是重命名的话,TotalCommand 可以了解一下

回到顶部