python 批量修改文件夹的名字并且修改每一个文件夹下的文件的名字

import os 

def rename():
path = '/home/sy/CUB_200_2011/pytorch/train'
filelist = os.listdir(path)#该文件夹下所有文件(包括文件夹)
for files in filelist :#遍历所有文件
olddir = os.path.join(path,files)#原来的文件路径
# print(olddir)
if os.path.isdir(olddir):
filename = os.path.splitext(files)[0]#文件名151
os.rename(os.path.join(path,files),os.path.join(path,filename))#把文件路径重命名  
# print(os.path.join(path,filename))#输出的是path+151
# print(newdir)
path1 = os.path.join(path,filename)#改完名以后的完整路径
print(path1)
# path1 = str(path1)
filelist1 =os.listdir(path1)#该文件夹下所有文件(包括文件夹)
# print(filelist1)
for files1 in filelist1:#遍历所有文件
# files1 = str(files1)
olddir1 = os.path.join(path1,files1)#原来的文件路径
# print(olddir1[0])
filename1=os.path.splitext(files1)[0]#文件名
print(filename1)

filetype1=os.path.splitext(files1)[1]#文件扩展名
# print(filetype1)
if filename1.find('_')>=0:#如果文件名中含有_
filename1=filename1.split('_')
# print(filename1[-1])#取最后一个
# print(filename1[-2])#取倒数第二个
newdir1=os.path.join(path1,filename+'_'+filename1[-2]+'_'+filename1[-1]+filetype1)
os.rename(os.path.join(path1,files1),os.path.join(path1,filename+'_'+filename1[-2]+'_'+filename1[-1]+filetype1))
print(newdir1)



rename();
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值