Python中删除文件的程序代码


Posted in Python onMarch 13, 2011

Python是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定。Python 具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用。它具有简单、易学、免费、开源、可移植性、解释性、面向对象、可扩展性、可嵌入性以及丰富的库等特性,目前的应用范围也非常广泛,如系统编程、图像处理、数据库编程等方面。
Python开发者可以使用文本编辑器(如Windows的记事本等)或者专业的IDE(集成开发环境)来编写程序代码。IDE使得开发者可以很方便地创建、运行、调试Python程序。IDE可以在Python的官方网站(http://www.python.org)下载,目前(2009年9月)最新版本为Python 3.1.1,本文中将以Python 2.6.2为开发平台进行介绍。
关于Python程序的运行,其实一个Python程序就相当于一个应用程序,它不需要经过编译,只需要用户电脑上面安装Python环境即可。要运行一个py程序,直接双击这个py文件即可。一般情况下,没有提示用户输入或控制屏幕显示,打开一个py文件时会突然闪一下马上就退出,这是由于程序运行已经完成了。若需要显示,则要添加一个屏幕暂停的代码:
os.system('pause')
在使用这个代码前,需要引用os模块:import os
下面开始介绍删除文件的Python程序设计:
很多软件在运行时会自动创建一些备份文件,在程序退出后又不自动删除备份文件,随着文件数量的增加,每隔一段时间就要清理一下。如果文件数量比较多,手工清理显然比较麻烦。于是可以编写一个Python脚本来完成该任务。如下代码:

# -*- coding: cp936 -*- 
#file:E01.py 
import os 
#该函数用于删除文件 
def scan(arg, dirname, names): 
for file in names: 
if file[0]=="~" or file[-4:]==".bak": 
print "删除文件:", file 
file=dirname+"\\"+file 
os.remove(file) 
print "完成!" 
#提示用户输入目录路径 
path=raw_input("请输入要删除文件所在目录:(如D:\\temp)") 
if os.path.exists(path)==False: #检查用户输入的目录是否存在,如果不存在则退出程序 
print "输入的目录不存在!" 
os._exit(1) 
os.path.walk(path, scan, 0) 
os.system('pause')

运行该程序,它将删除用户指定目录下的以波浪符号(~)开头或以后缀(.bak)结尾的文件。运行结果如下图所示:
下面来分析这段代码。首先,系统操作都在os模型中,所有首先需要导入os模型。然后提示用户输入文件目录,同时检查用户输入的文件目录是否正确。检验目录是否存在使用os.path.exists(path)方法,如果返回True则表示目录存在,如果返回False则表示不存在,则退出程序。退出Python程序采用os._exit(1)方法。os.path.walk()方法是访问目录中的每个目录以及文件,在该方法内调用函数scan。函数scan的参数指定为3个,其中names表示目录内所有文件的名称,为列表类型。然后对于每一个文件检查其文件名是否符合要删除文件名的特征(以波浪符号(~)开头或以后缀(.bak)结尾的文件),如果符合要求,则采用os.remove(file)方法删除。在此值得注意的是,采用os.remove(file)方法删除文件,要求参数file为全路径和文件名,如D:\temp\1.bak。
如果要删除tmp临时文件,只需要将上段代码中的“file[-4:]==".bak"”更改为“file[-4:]==".tmp"”即可。最后一句(os.system('pause'))表示屏幕暂停。
Python 相关文章推荐
python生成随机密码或随机字符串的方法
Jul 03 Python
python 3利用Dlib 19.7实现摄像头人脸检测特征点标定
Feb 26 Python
python 查找文件名包含指定字符串的方法
Jun 05 Python
解决Python print 输出文本显示 gbk 编码错误问题
Jul 13 Python
python实现彩票系统
Jun 28 Python
Python将列表数据写入文件(txt, csv,excel)
Apr 03 Python
Python爬虫实现爬取百度百科词条功能实例
Apr 05 Python
python 实现将文件或文件夹用相对路径打包为 tar.gz 文件的方法
Jun 10 Python
python变量的作用域是什么
May 26 Python
Python列表如何更新值
May 27 Python
Python脚本实现监听服务器的思路代码详解
May 28 Python
使用python脚本自动生成K8S-YAML的方法示例
Jul 12 Python
python 中文乱码问题深入分析
Mar 13 #Python
学习python处理python编码问题
Mar 13 #Python
布同 Python中文问题解决方法(总结了多位前人经验,初学者必看)
Mar 13 #Python
布同 统计英文单词的个数的python代码
Mar 13 #Python
python将多个文本文件合并为一个文本的代码(便于搜索)
Mar 13 #Python
布同自制Python函数帮助查询小工具
Mar 13 #Python
Python中的文件和目录操作实现代码
Mar 13 #Python
You might like
PHP中的串行化变量和序列化对象
2006/09/05 PHP
PHP中使用socket方式GET、POST数据实例
2015/04/02 PHP
JS实现打开本地文件或文件夹
2021/03/09 Javascript
Javascript解决常见浏览器兼容问题的12种方法
2010/01/04 Javascript
js+css使DIV始终居于屏幕中间 左下 左上 右上 右下的代码集合
2011/03/10 Javascript
浅析Prototype的模板类 Template
2011/12/07 Javascript
初识Node.js
2014/09/03 Javascript
jQuery中nextUntil()方法用法实例
2015/01/07 Javascript
jQuery的Ajax用户认证和注册技术实例教程(附demo源码)
2015/12/08 Javascript
JS代码实现百度地图 画圆 删除标注
2016/10/12 Javascript
微信小程序HTTP接口请求封装代码实例
2019/09/05 Javascript
layui问题之模拟table表格中的选中按钮选中事件的方法
2019/09/20 Javascript
layer.open 子页面弹出层向父页面传输数据的例子
2019/09/26 Javascript
[36:33]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.29
2020/12/02 DOTA
Python 文件和输入输出小结
2013/10/09 Python
详解Python中contextlib上下文管理模块的用法
2016/06/28 Python
基于Python对象引用、可变性和垃圾回收详解
2017/08/21 Python
如何基于Python批量下载音乐
2019/11/11 Python
python保存log日志,实现用log日志画图
2019/12/24 Python
python 爬取马蜂窝景点翻页文字评论的实现
2020/01/20 Python
使用 tf.nn.dynamic_rnn 展开时间维度方式
2020/01/21 Python
详解基于python的图像Gabor变换及特征提取
2020/10/26 Python
Python 实现图片转字符画的示例(静态图片,gif皆可)
2020/11/05 Python
Mamas & Papas沙特阿拉伯:英国最受欢迎的婴儿品牌
2017/11/20 全球购物
斯凯奇新西兰官网:SKECHERS新西兰
2018/02/22 全球购物
一名女生的自荐信
2013/12/08 职场文书
大型活动策划方案
2014/01/12 职场文书
六十大寿答谢词
2014/01/12 职场文书
新任教师自我鉴定
2014/02/24 职场文书
教育专业毕业生推荐信
2014/07/10 职场文书
会议邀请函
2015/01/30 职场文书
家庭聚会祝酒词
2015/08/11 职场文书
小学生运动会广播
2015/08/19 职场文书
初中化学教学反思
2016/02/22 职场文书
2016年圣诞节义工活动总结
2016/04/01 职场文书
SQL中的三种去重方法小结
2021/11/01 SQL Server