利用 python 对目录下的文件进行过滤删除

yipeiwu_com6年前Python基础

前言

最近学习了python,感觉挺多地方能用到它的。打包 测试 上传 爬电影....而且代码量是真少。人生苦短,我用python。而今天写的这个是因为下载电影时总会发现除了视频还会有这两个文件,甚至更多乱七八糟的文件


看着这些文件很不舒服。一个个文件夹的删太费劲了。还要注意不能误删。于是这个脚本就出来了“根据扩展名过滤删除文件”,下面话不多说了,来一起看看详细的介绍吧。

Step1

首先需要一个参数配置文件FilterParameter.py

  • formatFiles需要过滤的扩展名
  • dir需要进行删除的目录路径
formatFiles = [
 '.mp4',
 '.mkv',
 '.avi',
 '.rmvb'

]
dir = "/Users/cuiyang/Movies/Fmovie/"

Step2

首先创建一个方法将目录下所有文件取出

def currentDirFile(dir):
 fileNames = os.listdir(dir)
 for fn in fileNames:
  fullFileName = os.path.join(dir, fn)
  if not os.path.isdir(fullFileName):
   delFile(fullFileName)
  else:
   currentDirFile(fullFileName)

再将需要删除的文件进行过滤,这里是将文件移动到废纸篓(mac),万一目录写错了或者什么原因误删那不GG。

def delFile(filePath):
 # 分隔后缀名
 formatName = os.path.splitext(filePath)[1]
 if not FilterParameter.formatFiles.__contains__(formatName) and \
     filePath.split('/')[-1] != '.DS_Store': # mac下每个文件夹都有个.DS_Store隐藏文件这个不需要动
  # print(filePath)
  shutil.move(filePath, '/Users/cuiyang/.Trash')# 移动到废纸篓

对 就是这么简单 相信会python的同学一下就看懂了。源码地址 (本地下载

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

django小技巧之html模板中调用对象属性或对象的方法

django小技巧之html模板中调用对象属性或对象的方法

环境:依赖最初test2数据库            python3版本  ...

Python面向对象封装操作案例详解

Python面向对象封装操作案例详解

本文实例讲述了Python面向对象封装操作。分享给大家供大家参考,具体如下: 目标 封装 小明爱跑步 存放家具 01. 封装 封装 是面向对象编程的一大特点 面向对象编程的 第一步 ——...

pip安装Python库时遇到的问题及解决方法

pip安装Python库时遇到的问题及解决方法

笔者电脑系统是win7,同时安装了Python2.7和Python3.6,但是在通过命令行直接使用“pip install XXX”安装Python库时出现了以下的错误信息: Fatal...

Python时间戳使用和相互转换详解

本文实例为大家分享了Python时间戳使用和相互转换的具体代码,供大家参考,具体内容如下 1.将字符串的时间转换为时间戳 方法:    &nbs...

Python元组及文件核心对象类型详解

元组 元组是不可变类型,以()表示,是任意对象的有序集合,同样是序列的一种,index和count方法分别是取元素,统计元素个数。 语法比如(2,3)就是一个元组。元组与列表如此类似,...