第一次尝试用python写一个完整有用的程序,这个脚本实现了能把当前文件的指定文件按一定顺序进行重新命名,还是有一定的适用价值
下面贴代码
#coding:utf-8
import os
perfix=‘test‘ #perfix为重命名后的文件起始字符
length=2 #length为除去perfix后,文件名要达到的长度
base=1 #文件名的起始数
format=‘txt‘ #文件的后缀
#函数PadLeft将文件名补全到指定长度
#str为将要补全的字符
#num为要达到的长度
#padstr 为达到长度所添加的字符
def PadLeft(str,num,padstr):
stringlength=len(str)
n=num-stringlength
if n>=0:
str=padstr*n+str
return str
#为了避免误操作,这里先提示用户
print (‘the files in %s will be renamed‘ % os.getcwd())
input=raw_input(‘press y to continue\n‘) #获取用户输入
if input.lower()!=‘y‘:#判断用户输入,已决定是否执行重命名操作
exit()
filenames=os.listdir(os.curdir) #获取当前目录的内容
i=base-1
for filename in filenames: #遍历目录中的内容,进行重命名操作
i=i+1
if filename!="rename.py" and os.path.isfile(filename):
name=str(i) #将 i转化成字符
name=PadLeft(name,length,‘0‘) #将name补全到指定长度
t=filename.split(‘.‘)#分割文件名,以检查其是否是索要修改的类型
m=len(t)
if format==‘‘: #如果未指定类型,则更改当前目录中的左右文件
os.rename(filename,perfix+name+‘.‘+t[m-1])
else: #否则值修改指定类型
if t[m-1]==format:
os.rename(filename,perfix+name+‘.‘+t[m-1])
else:
i=i-1#保证i连续
else:
i=i-1#保证i连续