zl程序教程

您现在的位置是:首页 >  后端

当前栏目

重命名批处理python脚本

Python 脚本 重命名 批处理
2023-06-13 09:14:49 时间
将Copyof********.bmp或者CopyofCopyof********.bmp此类文件统一命名为********0.bmp或者********00.bmp等格式,后面的0的个数代表********.bmp出现的次数+1。写了个下面的小脚本:
复制代码代码如下:

importos
"""
这个程序是用来将文件名改名,因为在文件夹里面有很多Copyof重文件名,因此去掉windows
重命名风格而换用新的累加命名机制
作者:chenxofHit@gmail.com
时间:2011年4月13日
"""
defgetFileNames(dirs,dict):
#dir为目录名,lst列表
filenames=os.listdir(dirs)
fornameinfilenames:
key=filenames[filenames.index(name)]
sign="CopyOf"
judge=key.find(sign)
if(judge!=-1):
dict[key]=1
else:#提取其中的真实文件名
trueKey=key[-12:]#因为真实的文件名都是在12位
iftrueKeynotindict:#字典中不存在
dict[trueKey]=1
os.rename(dirs+str(os.sep)+name,dirs+str(os.sep)+trueKey)
else:
#splitfinames
newKey=str(trueKey[:-4])+str("0"*dict[trueKey])+str(trueKey[-3:])
dict[trueKey]=dict[trueKey]+1
os.rename(dirs+os.sep+name,dirs+os.sep+newKey)

if"__name__=__main__":
dict={}
dirs="C://temp"
getFileNames(dirs,dict)

用到了字典,用到了os模块,学到了一些东西,呵呵!