Python 实现删除某路径下文件及文件夹的实例讲解


Posted in Python onApril 24, 2018

Python 实现删除某路径下文件及文件夹的脚本

#!/usr/bin/env python
import os
import shutil
delList = []
delDir = "/home/test"
delList = os.listdir(delDir )
for f in delList:
  filePath = os.path.join( delDir, f )
  if os.path.isfile(filePath):
    os.remove(filePath)
    print filePath + " was removed!"
  elif os.path.isdir(filePath):
  shutil.rmtree(filePath,True)
    print "Directory: " + filePath +" was removed!"

shutil是一个高层次的文件操作模块。True参数表示ignore_errors(忽略拷贝时候的错误)。

类似于高级API,而且主要强大之处在于其对文件的复制与删除操作更是比较支持好。

[附] os模块(库)的使用

有关文件夹与文件的查找,删除等功能 在 os 模块中实现。

一、取得当前目录

#1.1
s = os.getcwd()
# s 中保存的是当前的执行目录(即执行所在的文件夹)

[注意]

如果是要获得程序运行的当前目录所在位置,那么可以使用os模块的os.getcwd()函数。

如果是要获得当前执行的脚本的所在目录位置,那么需要使用sys模块的sys.path[0]变量或者sys.argv[0]来获得

#1.2
import os
import time
folder = time.strftime(r"%Y-%m-%d_%H-%M-%S",time.localtime())
os.makedirs(r'%s/%s'%(os.getcwd(),folder))

二、更改当前目录

os.chdir( "/root/123")
#将当前目录设为 "/root/123"
#说明: 当指定的目录不存在时,引发异常。

三、将一个路径名分解为目录名和文件名两部分

fpath , fname = os.path.split( "你要分解的路径")

例如:

a, b = os.path.split( "/root/123/test.txt" )
print a
print b

显示:

/root/123/
test.txt

四、分解文件名的扩展名

fpathandname , fext = os.path.splitext( "你要分解的路径")

例如:

a, b = os.path.splitext( "/root/123/test.txt" )
print a
print b

显示:

/root/123/test
.txt

五、判断一个路径( 目录或文件)是否存在

b = os.path.exists( "你要判断的路径")

返回值b: True 或 False

六、判断一个路径是否文件

b = os.path.isfile( "你要判断的路径")

返回值b: True 或 False

七、判断一个路径是否目录

b = os.path.isdir( "你要判断的路径")

返回值b: True 或 False

八、获取某目录中的文件及子目录的列表

L = os.listdir( "你要判断的路径")

例如:

L = os.listdir( "/root/123" )
print L

显示 :

[‘test.txt', ‘test.py','python']
#这里面既有文件也有子目录

九、创建子目录

os.makedirs( path )  # path 是"要创建的子目录"

例如:

os.makedirs("/root/123")

调用有可能失败,可能的原因是:

(1) path 已存在时(不管是文件还是文件夹)

(2) 驱动器不存在

(3) 磁盘已满

(4)磁盘是只读的或没有写权限

十、删除子目录

os.rmdir( path ) # path: "要删除的子目录"

产生异常的可能原因:

(1) path 不存在

(2) path 子目录中有文件或下级子目录

(3) 没有操作权限或只读

十一、删除文件

os.remove(  filename )  # filename: "要删除的文件名"

产生异常的可能原因:

(1) filename 不存在

(2) 对filename文件, 没有操作权限或只读。

十二、文件改名

os.name( oldfileName, newFilename)

产生异常的原因:

(1) oldfilename 旧文件名不存在

(2) newFilename 新文件已经存在时,此时,您需要先删除 newFilename 文件。

以上这篇Python 实现删除某路径下文件及文件夹的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python高效编程技巧
Jan 07 Python
Python ORM框架SQLAlchemy学习笔记之映射类使用实例和Session会话介绍
Jun 10 Python
零基础写python爬虫之抓取糗事百科代码分享
Nov 06 Python
python 3.5下xadmin的使用及修复源码bug
May 10 Python
Python cookbook(数据结构与算法)字典相关计算问题示例
Feb 18 Python
Python解析、提取url关键字的实例详解
Dec 17 Python
python生成带有表格的图片实例
Feb 03 Python
解决Python找不到ssl模块问题 No module named _ssl的方法
Apr 29 Python
python 哈希表实现简单python字典代码实例
Sep 27 Python
在python shell中运行python文件的实现
Dec 21 Python
python如何删除文件、目录
Jun 23 Python
Pandas加速代码之避免使用for循环
May 30 Python
python3+PyQt5实现文档打印功能
Apr 24 #Python
Python结合ImageMagick实现多张图片合并为一个pdf文件的方法
Apr 24 #Python
python3+PyQt5实现柱状图
Apr 24 #Python
python3+PyQt5自定义视图详解
Apr 24 #Python
python自动重试第三方包retrying模块的方法
Apr 24 #Python
python3+PyQt5泛型委托详解
Apr 24 #Python
python去除扩展名的实例讲解
Apr 23 #Python
You might like
用php+javascript实现二级级联菜单的制作
2008/05/06 PHP
php 阴历-农历-转换类代码
2012/01/16 PHP
PHP简单留言本功能实现代码
2017/06/09 PHP
用PHP去掉文件头的Unicode签名(BOM)方法
2017/06/22 PHP
prototype 的说明 js类
2006/09/07 Javascript
DIV外区域Click后关闭DIV的实现代码
2011/12/21 Javascript
appendChild() 或 insertBefore()使用与区别介绍
2013/10/11 Javascript
angularJS 入门基础
2015/02/09 Javascript
javascript 闭包详解
2015/02/15 Javascript
javascript常用函数(2)
2015/11/05 Javascript
如何使用AngularJs打造权限管理系统【简易型】
2016/05/09 Javascript
webpack实现热加载自动刷新的方法
2017/07/30 Javascript
微信小程序模板和模块化用法实例分析
2017/11/28 Javascript
解决Nodejs全局安装模块后找不到命令的问题
2018/05/15 NodeJs
JavaScript函数节流和函数去抖知识点学习
2018/07/31 Javascript
vue项目实现表单登录页保存账号和密码到cookie功能
2018/08/31 Javascript
vue实现自定义日期组件功能的实例代码
2018/11/06 Javascript
Async/Await替代Promise的6个理由
2019/06/15 Javascript
JS实现移动端可折叠导航菜单(现代都市风)
2020/07/07 Javascript
js中复选框的取值及赋值示例详解
2020/10/18 Javascript
详解Python设计模式编程中观察者模式与策略模式的运用
2016/03/02 Python
Win8下python3.5.1安装教程
2020/07/29 Python
python针对不定分隔符切割提取字符串的方法
2018/10/26 Python
python定间隔取点(np.linspace)的实现
2019/11/27 Python
Python中return函数返回值实例用法
2020/11/19 Python
HTML中meta标签及Keywords
2020/04/15 HTML / CSS
HTML5调用手机发短信和打电话功能
2020/04/29 HTML / CSS
法国房车租赁网站:Yescapa
2019/08/26 全球购物
金士达面试非笔试
2012/03/14 面试题
网上常见的一份Linux面试题(多项选择部分)
2015/02/07 面试题
幼儿园门卫岗位职责
2014/02/14 职场文书
同志主要表现材料
2014/08/21 职场文书
教师工作决心书
2015/02/04 职场文书
公司2015年终工作总结
2015/05/26 职场文书
Mysql超详细讲解死锁问题的理解
2022/04/01 MySQL
PHP 时间处理类Carbon
2022/05/20 PHP