,批量重命名文件夹中图片名字

import os, sys
from PIL import Image
import re

读取图片名称

path = r"D:\project\duoduo" # 文件夹路径
imagelist1 = os.listdir(path) # 读取images文件夹下所有文件的名字

for root,dirs,files in os.walk(path):

for file in files:

print(file.split(’.’)[0])

将要移动的图像文件夹路径

moveFromPath = r"D:\project\XRAY" # 文件夹路径

moveToPath = r"D:\project\3" # 文件夹路径
i = 0
for imagepath in imagelist1:
i += 1

moveFromPathTemp = moveFromPath + '\\' + imagepath
print(os.path.exists(moveFromPathTemp))
moveToPathTemp = moveToPath + '\\' + imagepath

if (os.path.exists(moveFromPathTemp)):  # 文件存在
    # 复制图片到新文件夹
    img = Image.open(str(moveFromPathTemp))

    img.save(moveToPathTemp)
    # os.remove(str(moveFromPath)) #删除图片
else:
    # pass
    print("不存在", moveFromPathTemp)
a = 0
if (i % 1 == 0):

   pass
  # print("当前序号%d" % i)
  # print("原路径:", moveFromPathTemp)
  # print("目标路径:", moveToPathTemp)

import os

class BatchRename():

‘’’

批量重命名文件夹中的图片文件

‘’’

def init(self):

self.path = r’D:\project\XRAY’ #表示需要命名处理的文件夹

def rename(self):

filelist = os.listdir(self.path) #获取文件路径

total_num = len(filelist) #获取文件长度(个数)

# i = 1 #表示文件的命名是从1开始的

for item in filelist:

if item.endswith(’.jpg’): #初始的图片的格式为jpg格式的(或者源文件是png格式及其他格式,后面的转换格式就可以调整为自己需要的格式即可)

src = os.path.join(os.path.abspath(self.path), item)

dst = os.path.join(os.path.abspath(self.path), item.split(’.’)[0]+’.jpg’) #处理后的格式也为jpg格式的,当然这里可以改成png格式

#dst = os.path.join(os.path.abspath(self.path), ‘0000’ + format(str(i), ‘0>3s’) + ‘.jpg’) 这种情况下的命名格式为0000000.jpg形式,可以自主定义想要的格式

try:

os.rename(src, dst)

# i = i + 1

except:

continue

if name == ‘main’:

demo = BatchRename()

demo.rename()

发布了41 篇原创文章 · 获赞 7 · 访问量 3702

猜你喜欢

转载自blog.csdn.net/weixin_43091087/article/details/100996074