批量修改文件的文件名或者后缀名python
批量修改文件夹中,文件的文件名,或者修改后缀名
例如,我将源文件夹qwe中的png后缀名结尾的文件全部重命名为jpg,并且名字从IMG_101开始递增。
import os
import re
import sys
#要修改的文件的文件夹路径
path=r"C:\Users\JF\Desktop\ni\qwe"
#要批量修改的文件的后缀名为
src_hzm="png"
fileList = os.listdir(path)
# 输出此文件夹中包含的文件名称
print("修改的文件所在的文件夹路径为:" + path)
# 得到进程当前工作目录
currentpath = os.getcwd()
# 将当前工作目录修改为待修改文件夹的位置
os.chdir(path)
# 名称变量
num = 1
# 遍历文件夹中所有文件
for fileName in fileList:
# 匹配文件名正则表达式
pat = ".+\."+src_hzm
# 进行匹配
pattern = re.findall(pat, fileName)
#print(pattern)
if len(pattern):
print("正在重命名文件:"+fileName)
#修改后的后缀名
det_hzm="jpg"
#文件重新命名
os.rename(fileName, ("IMG_"+str(num + 100) + '.' + det_hzm))
#改变编号,继续下一项
num = num + 1
else:
print("不匹配,跳过文件:"+fileName)
print("==========完成===========")
# 改回程序运行前的工作目录
os.chdir(currentpath)
# 刷新
sys.stdin.flush()
目前这个不支持多层文件夹,需要多层文件夹的,可以自行修改,遇到文件就递归调用。
还没有评论,来说两句吧...