python 批量修改数字类的文件名

时间:2023-03-08 22:27:39

今天碰到一个小问题,下载音频的时候,文件名的名字变成了数字,排序呢,是按照数字的大小往下排的。

想自己给它们重新起名字,但是又不打乱音频的顺序。好吧,那就自己写写代码吧。

思路就是遍历音频文件的数字文件名,然后仙从小到大排序,最后在按顺序改一下名字,这样就不会打乱顺序了。

直接上代码吧。

#coding=utf-8
import os;
list1=[]
path = 'C:\\Users\\rps\\Desktop\\799088'
filelist=os.listdir(path)#该文件夹下所有的文件(包括文件夹)
for files in filelist:#遍历所有文件
     Olddir=os.path.join(path,files)#原来的文件路径
     filename=os.path.splitext(files)[0]#文件名
     list1.append(int(filename))
list1.sort()
#print(list1)
for x,y in enumerate (list1):
     for files in filelist:
          filename=os.path.splitext(files)[0]
          if int(filename) == y:
         Olddir=os.path.join(path,files)#原来的文件路径
         Newdir=os.path.join(path,str(x)+'.mp3')#新的文件路径
         os.rename(Olddir,Newdir)#重命名