Python批量修改文件夹和子文件夹的文件名

前提要搭建环境:Python
个人使用macOS系统,系统自带Python 2.7.16版本,手动安装了Python 3.8.9版本

一、新建文件

新建文件,命名为rename.py

二、编辑代码并保存到本地

代码如末尾代码示例,修改自己的文件路径filePath,当前前缀replacePrefix,要改成的前缀newPrefix

三、cd 到脚本文件路径,执行运行指令即可看到文件名变化

cd /Users/Mac/Desktop/xxx
python rename.py,或者python3 rename.py

import os,re

# 文件夹路径
filePath = '/Users/Mac/Desktop/abcd/'

# 需要替换的前缀
replacePrefix = "AAA"
# 新的前缀
newPrefix = "BBB"

def replaceAllFilesName(path):
    '''
    批量修改文件夹下文件名和子文件夹下文件名
    :param path: 需要修改替换的文件夹绝对路径
    :return: 无返回
    '''
    # 计算文件修改的数量
    count = 0 
    # 导入路径,获得当前path下的root路径,directorys子目录,files文件
    for root, directorys, files in os.walk(path):
        for file in files:
            # 判断以xxx开头的文件
            if file.startswith(replacePrefix):
                newName = file.replace(replacePrefix, newPrefix)
                print("原文件名:{}, 新文件名{}".format(file, newName))
                # 文件完整路径
                oldPath = os.path.join(root, file)
                newPath = os.path.join(root, newName)
                # 开始重命名
                os.rename(oldPath, newPath)
                count += 1
    print("修改完成,共修改文件数量:{}个".format(count))

# 调用函数
replaceAllFilesName(filePath)

你可能感兴趣的:(Python批量修改文件夹和子文件夹的文件名)