import os
def file_name(file_dir,file_type=''):#默认为文件夹下的所有文件
lst = []
for root, dirs, files in os.walk(file_dir):
for file in files:
if(file_type == ''):
lst.append(file)
else:
if os.path.splitext(file)[1] == str(file_type):#获取指定类型的文件名
lst.append(file)
return lst
函数中需要的参数:文件夹路径file_dir和待筛选的文件类型file_type根据自己的实际情况设定。如:
file_dir = 'D:\CNKI E-Study\Literature'
file_type = '.caj'
files =file_name(file_dir,file_type)
print(files)
n=0
for f in files:
#设置旧文件名(就是路径+文件名)
oldname=file_dir+'\\'+f
#设置新文件名:源文件名称前加上数字编号_
f_new = str(n+1)+'_'+f
newname=file_dir+'\\'+f_new
#用os模块中的rename方法对文件改名
os.rename(oldname,newname)
# print(f,'======>',f_new)
n+=1
files_new =file_name(file_dir,file_type)
print(files_new)
for f_now in files_new:
#设置旧文件名(就是路径+文件名)
oldname=file_dir+'\\'+f_now
#设置新文件名
f_org=''.join(f_now.split('_')[1:])#list元素拼接成字符串
newname=file_dir+'\\'+f_org
#用os模块中的rename方法对文件改名
os.rename(oldname,newname)
# print(f_now,'======>',f_org)
files_org =file_name(file_dir,file_type)
print(files_org)