欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

linux中使用Python对图片进行批量命名

程序员文章站 2022-06-23 09:10:20
在linux中使用python对图片进行批量命名大家在进行机器学习训练时,为了方便管理不同种类的图片,需要对同一类图片进行批量命名。1 picture文件夹有大量照片,我们需要对其进行重新命名。2 此...

在linux中使用python对图片进行批量命名

大家在进行机器学习训练时,为了方便管理不同种类的图片,需要对同一类图片进行批量命名。
1 picture文件夹有大量照片,我们需要对其进行重新命名。

linux中使用Python对图片进行批量命名

2 此时我们可以在picture文件夹里启动终端,创建一个python脚本,其命名为rename.py。

touch rename.py

3 新开一个终端,输入

gedit rename.py

4 将下列代码粘贴进rename.py脚本

import os

class batchrename():
    '''
    批量重命名文件夹中的图片文件

    '''
    def __init__(self):
        self.path = '/media/hyr/d952-0c52/肉训练集/picture'  # 表示需要命名处理的文件夹

    def rename(self):
        filelist = os.listdir(self.path)  # 获取文件路径
        print('filelist',filelist)


        total_num = len(filelist)  # 获取文件长度(个数)
        i = 1  # 表示文件的命名是从1开始的
        for item in filelist:
            print('item',item)
            if item.endswith('.jpg'):  # 初始的图片的格式为jpg格式的(或者源文件是png格式及其他格式,后面的转换格式就可以调整为自己需要的格式即可)
                src = os.path.join(os.path.abspath(self.path), item)
                print('src',src)
            #dst = os.path.join(os.path.abspath(self.path), '' + str(i) + '.jpg')  # 处理后的格式也为jpg格式的,当然这里可以改成png格式
            dst = os.path.join(os.path.abspath(self.path), 'rou' + format(str(i), '0>3s') + '.jpg')           
		#这种情况下的命名格式为0000000.jpg形式,可以自主定义想要的格式
            try:
                os.rename(src, dst)
                print('converting %s to %s ...' % (src, dst))
                i = i + 1
            except:
                continue
        print('total %d to rename & converted %d jpgs' % (total_num, i))


if __name__ == '__main__':
    demo = batchrename()
    demo.rename()


将 self.path = ‘/media/hyr/d952-0c52/肉训练集/picture' 修改为自己的文件绝对路径。

5 启动终端,输入

python3 rename.py

linux中使用Python对图片进行批量命名

6 待运行完成后

linux中使用Python对图片进行批量命名

7 此时,我们查看picture文件夹,发现所有照片已经完成重新命名。

linux中使用Python对图片进行批量命名

到此这篇关于linux中使用python对图片进行批量命名的文章就介绍到这了,更多相关python批量命名内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

相关标签: python 重命名