0
点赞
收藏
分享

微信扫一扫

python修改文件夹名以及文件名

哈哈镜6567 2022-02-18 阅读 254

最近处理照片时 急需这个功能
就是
在这里插入图片描述
这个文件夹的编号要从0 开始编号 且图片后面要紧跟 每个编号的图片名

就是这个样子
在这里插入图片描述

所以就写的py文件快速修正以下

# -*- coding: utf-8 -*-
import os

# 设定文件路径
path = 'D:\\facenet\\facenet-tf2\\faceV6'
i = 0
# 对目录下的文件进行遍历
for dirname in os.listdir(path):
    # 判断是否是文件夹
    if os.path.isdir(os.path.join(path, dirname)):
        # 如果存在文件夹名存在就 往下找一个
        while os.path.exists(os.path.join(os.path.join(path, "%d" % i))):
            i += 1
        # 设置新文件名
        new_dirname = dirname.replace(dirname, "%d" % i)

        if not os.path.exists(os.path.join(os.path.join(path, new_dirname))):
            print("{}  --->   {}".format(os.path.join(path, dirname), os.path.join(path, new_dirname)))
            # 重命名
            os.rename(os.path.join(path, dirname), os.path.join(path, new_dirname))
        current_dir_name = os.path.join(path, new_dirname)
        for filename in os.listdir(current_dir_name):
            j = 0

            # 如果当前编号存在就改变往后增加图片编号
            while os.path.exists(os.path.join(current_dir_name, "{}_{}.bmp".format(i, j))):
                j += 1

            print(os.path.join(current_dir_name, "{}_{}.bmp".format(i, j)))
            # 判断是否是文件
            if os.path.join(path, filename)[-3:] == 'bmp':
                # 设置新文件名
                new_name = filename.replace(filename, "{}_{}.bmp".format(i, j))

                print("{}  --->   {}".format(os.path.join(current_dir_name, filename),
                                             os.path.join(current_dir_name, new_name)))
                # 重命名
                os.rename(os.path.join(current_dir_name, filename), os.path.join(current_dir_name, new_name))
                j += 1

        i += 1

print("End")



举报

相关推荐

0 条评论