python实现根据文件格式分类

使用到python内置os模块(对目录或文件的新建/删除/属性查看,还提供了对文件以及目录的路径操作)shutil模块(高等级的目录或文件的移动/复制/打包/压缩/解压等操作)

import os,shutil,time
def files_classfy(target_path):
        global count  #定义全局变量
        file_list = os.listdir(target_path)   #列出目标路径下的所有文件列表
        for file in file_list:  #遍历取到每一个文件名
                os.chdir(target_path)  #改变当前工作目录为目标路径
                if file.find('.') == -1:	#如果当前文件名中无扩展名则跳过
                        continue
                filetype = file.split('.')[-1]  #取得文件扩展名格式,windows下文件需设置为扩展名可见
                if not os.path.exists(filetype):
                        os.mkdir(filetype)      #如果工作目录下不存在以当前扩展名命名的文件夹则创建该文件夹(默认属性为0777)
                new_path = os.path.join(target_path,'%s'%filetype)  #取得当前扩展名文件夹路径
                os.chdir(new_path) 
                if os.path.exists(file):  #如果当前扩展名文件夹中已存在同名文件则跳过
                        continue
                else:
                        os.chdir(target_path)  #将工作目录切换回目标文件夹
                        shutil.move(file,filetype)  #移动相同格式的文件到对应的格式文件夹
                        count+=1
start = time.time()
count = 0
path = "G:\picture\mi5splus"
files_classfy(path)
total_time = time.time() - start
print("程序运行时间:%0.2f"%total_time)
print("共处理图片:%d"%count)

运行结果:

你可能感兴趣的:(python实操)