🌞

python实现文件批量重命名

开始

python其实没咋用过,这个小脚本是很久之前在网上找的,但是当时找到的时候还不能很好的执行,稍微小改动了一下。现在下面这段就是我经常用来更改图片文件名的小脚本(除了图片,其他文件名也可以):

示例代码

# -*- coding: utf-8 -*-
import os
def rename():
    count=1 #初始文件编号为1
    path='F:\\photo_after\\20180326 ANTUSHENG\\20180416 final\\web' #需要重命名的文件目录,注意目录的写法
    filelist=os.listdir(path) #返回指定的文件夹包含的文件或文件夹的名字的列表。这个列表以字母顺序。
    for files in filelist:  #循环列出文件
        Olddir=os.path.join(path,files)  #将多个路径组合后返回
        if os.path.isdir(Olddir): #判断路径是否为目录,isfile判断是否为文件
            continue #是的话继续
        filename=os.path.splitext(files)[0]  #文件名
        filetype=os.path.splitext(files)[1]  #文件后缀
        Newdir=os.path.join(path,'img_'+str(count)+filetype) 
        os.rename(Olddir,Newdir)  #重命名文件或目录
        count+=1   #文件编号加1
rename()

有几个要注意的地方:

  • 文件的路径需要填写完整和填写正确
  • 可以指定文件的初始编号
  • 在最后可以根据自己的实际需要,将文件名的前缀加上

举个例子

这里举一个例子,原来的文件名和所在的文件夹是这样的:

# -*- coding: utf-8 -*-
import os
def rename():
    count=1 #初始文件编号为1
    path='D:\\after_uniquelab\\zheTeng-temp' #需要重命名的文件目录,注意目录的写法
    filelist=os.listdir(path) #返回指定的文件夹包含的文件或文件夹的名字的列表。这个列表以字母顺序。
    for files in filelist:  #循环列出文件
        Olddir=os.path.join(path,files)  #将多个路径组合后返回
        if os.path.isdir(Olddir): #判断路径是否为目录,isfile判断是否为文件
            continue #是的话继续
        filename=os.path.splitext(files)[0]  #文件名
        filetype=os.path.splitext(files)[1]  #文件后缀
        Newdir=os.path.join(path,'conj_helper0411_'+str(count)+filetype) 
        os.rename(Olddir,Newdir)  #重命名文件或目录
        count+=1   #文件编号加1
rename()

点击运行之后,即可完成文件名修改:

updatedupdated2020-01-252020-01-25