python 批量更改文件名 经测试可用
程序员文章站
2022-04-18 19:23:48
...
1 读取文本文件内容。新文件名存入list变量 newn[] 中
2 目录下遍历提取旧文件名的特征值。本例中特征为 最开始的几个数字
3 比对特征值 。在 newn[] 中逐条寻找,找到则更改文件名
'''
2newname.txt 内容格式如下:
--------------------------------------
3.1.1 [视频] 感受與覺知-1.mp4
3.2.1 [视频] 感受與覺知-2.mp4
3.3.1 [视频] 感受與覺知-2 補充影片.mp4
3.4.1 [视频] 感受與覺知-3.mp4
3.5.1 [视频] 感受與覺知-4.mp4
3.6.1 [视频] 感受與覺知-5.mp4
--------------------------------------
新文件名存入list变量 newn[] 中
目录下遍历提取旧文件名的特征值。
特征值 在 newn[] 中逐条寻找,找到则更改文件名
'''
newn = []
fi = open('2newname.txt','r',encoding='utf-8')
for line in fi:
newn.append(line.replace('\n','').replace('\ufeff',''))
fi.close()
import os
#设定文件路径
path= '.\\' #当前路径
#对目录下的文件进行遍历
for file in os.listdir(path):
#判断是否是文件 ,file是 旧文件名,需要提取特征值
if os.path.isfile(os.path.join(path,file))==True:
# 提取特征值 ff[0] ,在 newn[]中循环寻找,
ff = file.split(" ",1) #只在第一个空格分割这个字符串.
#特征值 在 newn[] 中逐条寻找,找到则更改文件名
for ss in newn:
if ff[0] in ss:
new_name = ss #设置新文件名
print('新文件名: '+ss)
#重命名
os.rename(os.path.join(path,file),os.path.join(path,new_name))
break
#结束
print ("End")
上一篇: python批量更改文件名并编号
下一篇: JVM:System.gc