大家在进行机器学习训练时,为了方便管理不同种类的图片,需要对同一类图片进行批量命名。
1picture文件夹有大量照片,我们需要对其进行重新命名。
在这里插入图片描述
2此时我们可以在picture文件夹里启动终端,创建一个python脚本,其命名为rename.py。
touchrename.py
3新开一个终端,输入
geditrename.py
4将下列代码粘贴进rename.py脚本
importos
classBatchRename():
'''
批量重命名文件夹中的图片文件
'''
def__init__(self):
self.path='/media/hyr/D952-0C52/肉训练集/picture'#表示需要命名处理的文件夹
defrename(self):
filelist=os.listdir(self.path)#获取文件路径
print('filelist',filelist)
total_num=len(filelist)#获取文件长度(个数)
i=1#表示文件的命名是从1开始的
foriteminfilelist:
print('item',item)
ifitem.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%sto%s...'%(src,dst))
i=i+1
except:
continue
print('total%dtorename&converted%djpgs'%(total_num,i))
if__name__=='__main__':
demo=BatchRename()
demo.rename()
将self.path=‘/media/hyr/D952-0C52/肉训练集/picture'修改为自己的文件绝对路径。
Python客栈送红包、纸质书
5启动终端,输入
python3rename.py
在这里插入图片描述
6待运行完成后
7此时,我们查看picture文件夹,发现所有照片已经完成重新命名。
|