python可以批量读取文件夹中所有文件的名称,进而可以对原名称进行修改,并按顺序再赋给原文件,从而批量修改名称。
代码很简单,以《武林外传》前十回为例,原来的名称是这样的
经过如下操作
import os
# 输入文件夹地址
path = "E://音乐//武林外传//1-10"
files = os.listdir(path)
# 输出所有文件名,只是为了看一下
for file in files:
print(file)
# 获取旧名和新名
i = 0
for file in files:
# old 旧名称的信息
old = path + os.sep + files[i]
# new是新名称的信息,这里的操作是删除了最前面的'考拉很忙o - '共8个字符
new = path + os.sep + file.replace('考拉很忙o - ','')
#new = "E://音乐//武林外传//1-10" + os.sep + file[8:]
# 新旧替换
os.rename(old,new)
i+=1
得到如下结果
虽然这样之后文件的排序也没有按照第一回到第十回的顺序,但是改名还是成功了的。
其他方法
这里的修改操作是删除了文件名称的特定字符,使用的是str.replace()字符串操作函数,不需要说明待删除字符的位置和个数,比较方便。还可以使用其他函数
如已知要删除的字符都是前8个(编号为0-7),那么使用str[]进行字符串切片新名称就可以是
new = "E://音乐//武林外传//1-10" + os.sep + file[8:]
还可以使用其他的字符串处理方法,以后有机会使用的话我再补充
写在最后
之前一段时间喜欢在网易云音乐收听“考拉很忙o”的《武林外传》电台,后来经过了网易云的大规模下架,所有剧集都没有了。虽然后来主播重新上传,但是也缺了近乎一半。后来有幸获得了主播的资源,下载之后想上传到音乐云盘,于是萌生了批量改一下名字的想法。50陪我走过了大学四年和研一一年,希望能陪伴我又一个五年。
这世界有太多不如意,但你的生活还是要继续。 太阳每天依旧要升起,希望永远种在你心里。