思路:先遍历文件夹,因为遍历顺序可能不同,所以要把文件转换为整形,排序之后,在重命名.代码如下:
机器学习批量处理图片可能会用到
基本方法:
import os
path='/home/no1/Desktop/python_program/rename_file'
file_1=[file[:-4] for file in os.listdir(path) if file[-4:]=='.tif']
for index , name in enumerate(file_1):
file_1[index]=int(name)
file_2=sorted(file_1)
i=0
for file in file_2:
if len(str(file))<5:
newname='%05d'%(i)+'.tif'
i+=1
os.rename(os.path.join(path,str(file)+'.tif'),os.path.join(path,newname))
with open('filerename.txt','a') as f:
f.write(str(file)+'>>>>>>>>>>>>>>'+newname+'\n')
f.close
高级用法:
import glob
import os
def get_name(path):
name, _ = os.path.splitext(os.path.basename(path))
return name
input_paths = glob.glob(os.path.join('images', "*.jpg"))
input_paths1 = sorted(input_paths, key=lambda path1: int(get_name(path1)))