python实现根据文件格式分类

yipeiwu_com6年前Python基础

本文实例为大家分享了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设计】。

相关文章

python中lambda与def用法对比实例分析

本文实例对比分析了python中lambda与def的用法。分享给大家供大家参考。具体分析如下: 1、lambda用来创建匿名函数,不同于def(def创建的函数都是有名字的)。 2、l...

详解Python中open()函数指定文件打开方式的用法

文件打开方式 当我们用open()函数去打开文件的时候,有好几种打开的模式。 'r'->只读 'w'->只写,文件已存在则清空,不存在则创建。 'a'->追加,写到文件...

python通过百度地图API获取某地址的经纬度详解

python通过百度地图API获取某地址的经纬度详解

前言 这几天比较空闲,就接触了下百度地图的API(开发者中心链接地址:http://developer.baidu.com/),发现调用还是挺方便的,本文将给大家详细的介绍关于pytho...

pandas 空数据处理方法详解

这篇文章主要介绍了pandas 空数据处理方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 方法一:直接删除 1.查看行或列是...

详解Python self 参数

1、概述 1.1 场景 我们在使用 Python 中的 方法 method 时,经常会看到 参数中带有 self,但是我们也没对这个参数进行赋值,那么这个参数到底是啥意思呢? 2、知识点...