Python批量修改文件名(os库)

问题:

在某一文件夹内有97个sql文件,所有都以统一格式命名,例如“A201222-广州李小龙记念协会-1-广州李小龙记念协会-2018.AUD”正则表达式

因为有两段重复了,并且中间的“1”也没有意义,须要删掉,保留为“A201222-广州李小龙记念协会-2018.AUD”sql

由于工做上的缘由,以后还继续会出现这种状况,因此下面我就写一个程序去批量修改spa


 

解决代码:

 

import os

path = ('输入文件路径')
f = os.listdir(path) #将文件名提取为一个列表当中

k = 0
n = 0
for i in f:
    oldname = f[n]
    matchObj = oldname.split('-') #若是是面对复杂一点的结构,能够用正则表达式re.match('(A\d+\-)(.*\-1\-)(.*)',string),而后取其group(1)和group(3)
    if matchObj[2]!='2018.AUD':#由于文件夹内有几个文件通过手工修改,已经符合要求,因此这里写一个判断
        newname = matchObj[0] + '-' + matchObj[4]
        os.rename(path+'\\'+oldname,path+'\\'+newname)
        k+=1
    else:
        pass
    n+=1
print('已经修改了%d个文件名'% k)
相关文章
相关标签/搜索