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中合并两个文本文件并按照姓名首字母排序的例子
Apr 25 Python
举例讲解Python设计模式编程的代理模式与抽象工厂模式
Jan 16 Python
常用python编程模板汇总
Feb 12 Python
Python实现模拟分割大文件及多线程处理的方法
Oct 10 Python
使用Python函数进行模块化的实现
Nov 15 Python
解决pandas展示数据输出时列名不能对齐的问题
Nov 18 Python
使用Jupyter notebooks上传文件夹或大量数据到服务器
Apr 14 Python
Iconfont(矢量图标)+iconmoon(图标svg互转)配合javascript实现社交分享系统
Apr 21 Python
解决IDEA 的 plugins 搜不到任何的插件问题
May 04 Python
基于logstash实现日志文件同步elasticsearch
Aug 06 Python
Jupyter notebook命令和编辑模式常用快捷键汇总
Nov 17 Python
python 视频下载神器(you-get)的具体使用
Jan 06 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
Yii分页用法实例详解
2014/12/04 PHP
discuz目录文件资料汇总
2014/12/30 PHP
实例讲解YII2中多表关联的使用方法
2017/07/21 PHP
PHP反射实际应用示例
2019/04/03 PHP
jQuery 学习第七课 扩展jQuery的功能 插件开发
2010/05/17 Javascript
基于JQuery的日期联动实现代码
2011/02/24 Javascript
jQuery数据显示插件整合实现代码
2011/10/24 Javascript
利用jquery包将字符串生成二维码图片
2013/09/12 Javascript
简体中文转换繁体中文(实现代码)
2013/12/25 Javascript
最流行的Node.js精简型和全栈型开发框架介绍
2015/02/26 Javascript
创建基于Bootstrap的下拉菜单的DropDownList的JQuery插件
2016/06/02 Javascript
bootstrap制作jsp页面(根据值让table显示选中)
2017/01/05 Javascript
详解vue2 $watch要注意的问题
2017/09/08 Javascript
原生JS实现日历组件的示例代码
2017/09/22 Javascript
vue 2.x 中axios 封装的get 和post方法
2018/02/28 Javascript
使vue实现jQuery调用的两种方法
2019/05/12 jQuery
基于 vue-skeleton-webpack-plugin 的骨架屏实战
2019/08/05 Javascript
[02:15]2014DOTA2国际邀请赛 赛后退役选手回顾
2014/08/01 DOTA
[04:11]DOTA2上海特级锦标赛主赛事首日TOP10
2016/03/03 DOTA
Python实现的拟合二元一次函数功能示例【基于scipy模块】
2018/05/15 Python
python tkinter实现界面切换的示例代码
2019/06/14 Python
基于python使用tibco ems代码实例
2019/12/20 Python
关于Pytorch MaxUnpool2d中size操作方式
2020/01/03 Python
Tensorflow设置显存自适应,显存比例的操作
2020/02/03 Python
Python+unittest+DDT实现数据驱动测试
2020/11/30 Python
用CSS3实现Win8风格的方格导航菜单效果
2013/04/10 HTML / CSS
html5 Canvas画图教程(9)—canvas中画出矩形和圆形
2013/01/09 HTML / CSS
canvas 基础之图像处理的使用
2020/04/10 HTML / CSS
植树节活动总结
2014/04/30 职场文书
社保委托书怎么写
2014/08/02 职场文书
护士实习自荐信
2015/03/06 职场文书
保留意见审计报告
2015/06/05 职场文书
小学运动会开幕词
2016/03/04 职场文书
2016年小学推普宣传周活动总结
2016/04/06 职场文书
导游词之岳阳楼
2019/09/25 职场文书
mysql如何查询连续记录
2022/05/11 MySQL