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


Posted in Python onDecember 27, 2017

前言

最近学习了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 相关文章推荐
Python 2.7.x 和 3.x 版本的重要区别小结
Nov 28 Python
简述Python中的面向对象编程的概念
Apr 27 Python
在Python中使用全局日志时需要注意的问题
May 06 Python
Python实现给文件添加内容及得到文件信息的方法
May 28 Python
python3写的简单本地文件上传服务器实例
Jun 04 Python
解决PyCharm控制台输出乱码的问题
Jan 16 Python
用pycharm开发django项目示例代码
Jun 13 Python
python中的列表与元组的使用
Aug 08 Python
深入了解python中元类的相关知识
Aug 29 Python
python同步两个文件夹下的内容
Aug 29 Python
Django 解决上传文件时,request.FILES为空的问题
May 20 Python
python中的时区问题
Jan 14 Python
python中使用%与.format格式化文本方法解析
Dec 27 #Python
python类的方法属性与方法属性的动态绑定代码详解
Dec 27 #Python
python中的迭代和可迭代对象代码示例
Dec 27 #Python
python并发编程之线程实例解析
Dec 27 #Python
Python实现连接postgresql数据库的方法分析
Dec 27 #Python
Python机器学习之SVM支持向量机
Dec 27 #Python
Python:Scrapy框架中Item Pipeline组件使用详解
Dec 27 #Python
You might like
PHP flock 文件锁详细介绍
2012/12/29 PHP
yii2中使用Active Record模式的方法
2016/01/09 PHP
win10 apache配置虚拟主机后localhost无法使用的解决方法
2018/01/27 PHP
PHP封装curl的调用接口及常用函数详解
2018/05/31 PHP
laravel csrf排除路由,禁止,关闭指定路由的例子
2019/10/21 PHP
js 文件引入实现代码
2010/04/23 Javascript
Jquery优化效率 提升性能解决方案
2010/09/06 Javascript
jquery 学习之二 属性 文本与值(text,val)
2010/11/25 Javascript
Lazy Load 延迟加载图片的jQuery插件中文使用文档
2012/10/18 Javascript
JS获取节点的兄弟,父级,子级元素的方法
2014/01/09 Javascript
js加密解密字符串可自定义密码因子
2014/05/13 Javascript
浏览器缩放检测的js代码
2014/09/28 Javascript
浏览器环境下JavaScript脚本加载与执行探析之动态脚本与Ajax脚本注入
2016/01/19 Javascript
jQuery Ajax传值到Servlet出现乱码问题的解决方法
2016/10/09 Javascript
基于jQuery和Bootstrap框架实现仿知乎前端动态列表效果
2016/11/09 Javascript
angular分页指令操作
2017/01/09 Javascript
canvas实现探照灯效果
2017/02/07 Javascript
详解Vue.js 2.0 如何使用axios
2017/04/21 Javascript
Vuejs 单文件组件实例详解
2018/02/09 Javascript
讲解vue-router之什么是编程式路由
2018/05/28 Javascript
原生JS实现的轮播图功能详解
2018/08/06 Javascript
vue项目实现减少app.js和vender.js的体积操作
2020/11/12 Javascript
微信 用脚本查看是否被微信好友删除
2016/10/28 Python
python脚本生成caffe train_list.txt的方法
2018/04/27 Python
python调用虹软2.0第三版的具体使用
2019/02/22 Python
python实现门限回归方式
2020/02/29 Python
施华洛世奇加拿大官网:SWAROVSKI加拿大
2018/06/03 全球购物
微博营销计划书
2014/01/10 职场文书
浙江文明网签名寄语
2014/01/18 职场文书
爱国卫生月实施方案
2014/02/21 职场文书
中药学专业毕业生推荐信
2014/07/10 职场文书
2014班子“三严三实”对照检查材料思想汇报
2014/09/18 职场文书
劳动纠纷调解协议书格式
2014/11/30 职场文书
幸福家庭事迹材料
2014/12/20 职场文书
中学图书馆工作总结
2015/08/11 职场文书
房屋转让协议书(标准范本)
2016/03/21 职场文书