importosprefix='Python'# prefix 为重命名后的文件起始字符length=2# length为除去prefix以后,文件名要达到的长度base=1# 文件名的其实函数format='mdb'# 文件名的后缀'''函数padLeft将文件名补全到指定长度
str 为要补全的字符
num 为要达到的长度
padstr 为达到长度所需要添加的字符
'''defpadLeft(str,num,padstr):stringLen=len(str)n=num-stringLenifn>0:str=padstr*n+strreturnstr# 为了避免用户误操作,这里先提示用户print('the files in "%s" will be renamed'%os.getcwd())input=raw_input('press y to continue\n')ifinput!='y':exit()filenames=os.listdir(os.curdir)# 获取当前目录中的内容# 从基数减1,为了使i = i + 1在第一次执行时等于基数i=base-1forfilenameinfilenames:i=i+1# 判断当前路径是否为文件,并且不是"rename.py"iffilename!='base_practise.py'andos.path.isfile(filename):name=str(i)name=padLeft(name,length,'0')t=filename.split('.')m=len(t)ifformat=='':# 如果未指定文件类型,则更改当前目录中所有文件os.rename(filename,prefix+name+'.'+t[m-1])else:# 否则只修改指定类型的文件ift[m-1]==format:os.rename(filename,prefix+name+'.'+str(t[m-1]))else:i=i-1# 保证i连续else:i=i-1