python删除指定类型(或非指定)的文件实例详解


Posted in Python onJuly 06, 2015

本文实例分析了python删除指定类型(或非指定)的文件用法。分享给大家供大家参考。具体如下:
如下,删除目录下非源码文件

import os 
import string 
def del_files(dir,topdown=True): 
  for root, dirs, files in os.walk(dir, topdown): 
    for name in files: 
      pathname = os.path.splitext(os.path.join(root, name)) 
      if (pathname[1] != ".cpp" and pathname[1] != ".hpp" and pathname[1] != ".h"): 
        os.remove(os.path.join(root, name)) 
        print(os.path.join(root,name)) 
dir = os.getcwd() 
print(dir) 
del_files(dir)
#will delete the self .py file after run !!!-_- 
os.removedirs(dir)
#delete the empty directory recursively

以上功能,遍历文件夹 也可以用函数 os.listdir (dirname) 。只不过其与os.walk(dir, topdown) 的方式还是略有差异。
listdir 是按命名规则,对文件夹和文件、统一采用深度优先搜索的方式,进行列举
而os.walk的标准例程一般是先遍历文件,后遍历文件夹。

学习要点:

os类的函数:

os.getenv()和os.putenv()函数分别用来读取和设置环境变量。
os.system()函数用来运行shell命令。
os.linesep字符串给出当前平台使用的行终止符。例如,Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'。

与路径相关的os函数

os.listdir(dirname):列出dirname下的目录和文件
os.getcwd():获得当前工作目录,即当前Python脚本工作的目录路径。
os.curdir:返回当前目录('.')
os.chdir(dirname):改变工作目录到dirname

os.path.isdir(name):判断name是不是一个目录,name不是目录就返回false
os.path.isfile(name):判断name是不是一个文件,不存在name也返回false
os.path.exists(name):判断是否存在文件或目录name

os.path.getsize(name):获得文件大小,如果name是目录返回0
os.path.abspath(name):获得绝对路径
os.path.normpath(path):规范path字符串形式

os.path.split(name):分割文件名与目录(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在)
>>> os.path.split('/home/swaroop/byte/code/poem.txt')
('/home/swaroop/byte/code', 'poem.txt')
os.path.splitext():分离文件名与扩展名

os.rename(name1, name2) 重命名文件
如修改文件类型,os.rename(os.path.join(root, name), pathname[0]+".cpp") pathname[0]为文件名,pathname[1]为扩展名

os.path.join(path,name):连接目录与文件名或目录
os.path.basename(path):返回文件名
os.path.dirname(path):返回文件路径

os.walk返回三元组形式,相当于三元组列表,遍历path,返回一个对象,他的每个部分都是一个三元组,('目录x',[目录x下的目录list],目录x下面的文件)

string类型的数据,可以使用==, !=等运算符

多参考python帮助文档,很强大。

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python中使用hashlib模块处理算法的教程
Apr 28 Python
Python字典简介以及用法详解
Nov 15 Python
浅谈Python的垃圾回收机制
Dec 17 Python
JPype实现在python中调用JAVA的实例
Jul 19 Python
解决csv.writer写入文件有多余的空行问题
Jul 06 Python
Sanic框架配置操作分析
Jul 17 Python
详解python做UI界面的方法
Feb 27 Python
pytorch 自定义数据集加载方法
Aug 18 Python
numpy按列连接两个维数不同的数组方式
Dec 06 Python
Python sublime安装及配置过程详解
Jun 29 Python
Python OpenCV去除字母后面的杂线操作
Jul 05 Python
Python confluent kafka客户端配置kerberos认证流程详解
Oct 12 Python
python根据日期返回星期几的方法
Jul 06 #Python
python获取文件扩展名的方法
Jul 06 #Python
python创建临时文件夹的方法
Jul 06 #Python
Python中几个比较常见的名词解释
Jul 04 #Python
python检测是文件还是目录的方法
Jul 03 #Python
python生成随机密码或随机字符串的方法
Jul 03 #Python
在Python 3中实现类型检查器的简单方法
Jul 03 #Python
You might like
用PHP中的 == 运算符进行字符串比较
2006/11/26 PHP
PHP依赖倒置(Dependency Injection)代码实例
2014/10/11 PHP
PDO::lastInsertId讲解
2019/01/29 PHP
url参数中有+、空格、=、%、&、#等特殊符号的问题解决
2013/05/15 Javascript
javascript实现数字+字母验证码的简单实例
2014/02/10 Javascript
JS对文本框值的判断示例
2014/03/10 Javascript
javascript实时获取鼠标坐标值并显示的方法
2015/04/30 Javascript
js实现select选择框效果及美化
2016/08/19 Javascript
使用BootStrap实现表格隔行变色及hover变色并在需要时出现滚动条
2017/01/04 Javascript
常用的几个JQuery代码片段
2017/03/13 Javascript
详解angular中通过$location获取路径(参数)的写法
2017/03/21 Javascript
ES6中新增的Object.assign()方法详解
2017/09/22 Javascript
深入浅析ES6 Class 中的 super 关键字
2017/10/20 Javascript
利用es6 new.target来对模拟抽象类的方法
2019/05/10 Javascript
layui添加动态菜单与选项卡 AJAX请求的例子
2019/09/25 Javascript
[54:28]EG vs OG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
python实现根据月份和日期得到星座的方法
2015/03/27 Python
python数组复制拷贝的实现方法
2015/06/09 Python
Python压缩解压缩zip文件及破解zip文件密码的方法
2015/11/04 Python
python3学习笔记之多进程分布式小例子
2018/02/13 Python
Python 实现Windows开机运行某软件的方法
2018/10/14 Python
Python中栈、队列与优先级队列的实现方法
2019/06/30 Python
Django用户认证系统 组与权限解析
2019/08/02 Python
解决pandas展示数据输出时列名不能对齐的问题
2019/11/18 Python
python cv2.resize函数high和width注意事项说明
2020/07/05 Python
Python 可视化神器Plotly详解
2020/12/26 Python
css3 2D图片转动样式可以扩充到Js当中
2014/04/29 HTML / CSS
CSS3 animation实现逐帧动画效果
2016/06/02 HTML / CSS
澳大利亚自然和有机的健康美容产品一站式商店:Ziani Beauty
2017/12/28 全球购物
达拉斯牛仔官方商店:Dallas Cowboys Pro Shop
2018/02/10 全球购物
德国受欢迎的旅游和休闲网站:lastminute.de
2019/09/23 全球购物
项目合作协议书
2014/04/16 职场文书
出国留学计划书
2014/04/27 职场文书
离婚起诉书范文2015
2015/05/19 职场文书
python爬虫之利用selenium模块自动登录CSDN
2021/04/22 Python
测量JavaScript函数的性能各种方式对比
2021/04/27 Javascript