遍历文件夹下所有图片并重新命名(常用)

问题描述

经常会用到整合图片的情况,记录一下
好比目录结构是

-a
  -b
    1.jpg
    2.jpg
    3.jpg
  -c
    1.jpg
    2.jpg
    3.jpg

如上所示,大文件夹下有好几个文件夹,而各个文件夹下面有需要的jpg图片,想要放在一个文件夹下混合成六张jpg,并且从1开始排,也就是1.jpg-6.jpg,放在E:\face\m文件夹下(也可以直接替换在原文件下,注释代码)。

-m
 1.jpg
 2.jpg
 3.jpg
 4.jpg
 5.jpg
 6.jpg

代码

import os
def rename():

    path = r'E:\face\a'
    count = 1
    for files in os.listdir(path):
        fold_dir = os.path.join(path, files)

        filename = os.listdir(fold_dir)  # 该文件夹中文件的名称

        for number, temp in enumerate(filename):  # 编号,和得到各文件名
            new_picname = 'p'+str(count) + '.jpg'  # 新文件名(注意跟上文件后缀名),如果这里是多个根目录文件a,你可以在count后加一个数字(根目录文件a下的图片数)
            # os.rename(fold_dir + '\\' + temp, fold_dir +'\\'+ new_picname )  # 文件重命名后替换在原路径的原文件中
            os.rename(fold_dir + '\\' + temp, "E:\\face\\m\\"+new_picname ) #换路径 src,dist路径
            print(new_picname )
            count += 1
rename()

其他情况

如果恰好还有个文件是没有根目录而是直接一个文件夹下的图片

-d
  1.jpg
  2.jpg
  3.jpg

然后要把这儿的融合进去上面的,(假如上面的根目录文件下(也就是b和c两个文件夹下总共count=666张图片)

那么直接遍历的代码就是

import os
def rename2():
    path = r'E:\d'
    filename= os.listdir(path)
    count = 1
    for number, temp in enumerate(filename):  # 编号,和得到各文件名
        new_picname = 'p'+str(count+666) + '.jpg'  # 新文件名(注意跟上文件后缀名),如果这里是多个根目录文件a,你可以在count后加一个数字(根目录文件a下的图片数)
        # os.rename(path+ '\\' + temp, path+'\\'+ new_picname )  # 文件重命名后替换在原路径的原文件中
        os.rename(path+ '\\' + temp, "E:\\face\\m\\"+new_picname ) #换路径 src,dist路径
        print(new_picname )
        count += 1
rename2()
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lanmy_dl

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值