# -*- coding:utf8 -*-
#!\usr\bin\env python
# -*- coding: utf-8 -*-
# Author: hemengjiao
# FileName: renamePictures.py
# Function: 批量命名某一文件夹下的文件名
import os
class BatchRename():
'''
批量重命名文件夹中的图片文件
'''
def __init__(self):
self.path = r'E:\虹膜项目\pictures' #表示需要命名处理的文件夹
def rename(self):
#os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表。这个列表以字母顺序
filelist = os.listdir(self.path)
total_num = len(filelist) #获取文件夹内所有文件个数
i = 10
cardNo = 1
userName = 1
userNo = 100
eysNo = 1#0左眼,1右眼
sex = 3#3女生,6男生
for item in filelist:
#if item.endswith('.jpg'): //判断图片格式
src = os.path.join(os.path.abspath(self.path), item)
#虹膜图片要求:工号_姓名_卡号_眼睛编号_性别.bmp(1_1_1_11111_0_3) :眼睛编号范围是0-左 1-右,性别是0-无、3-女、6-男
#newName = str(userNo)+"_"+str(userName)+"_"+str(cardNo)+"_"+str(eysNo)+"_"+str(sex)
#dst = os.path.join(os.path.abspath(self.path),str(newName) + '.bmp') #调整图片格式为bmp
dst = os.path.join(os.path.abspath(self.path), '%s_%s_%s_%s_%s.%s' %(userNo,userName,userNo,eysNo,sex,'.bmp'))
#dst = os.path.join(os.path.abspath(self.path), '0000' + format(str(i), '0>3s') + '.jpg')
#这种情况下的命名格式为0000000.jpg形式,可以自主定义想要的格式
try:
os.rename(src, dst)
print ('converting %s to %s ...' % (src, dst))
cardNo = cardNo + 1
userName = userName + 1
userNo = userNo + 1
except:
continue
print ('total %d to rename & converted %d jpgs' % (total_num, i))
if __name__ == '__main__':
demo = BatchRename()
demo.rename()
python练习:重命名大量图片
最新推荐文章于 2022-02-23 09:56:12 发布