python2.7删除文件夹和删除文件代码实例


Posted in Python onDecember 18, 2013
#!c:\python27\python.exe
# -*- coding: utf-8 -*-
import os
import re
from os import path
from shutil import rmtree
DEL_DIRS = None
DEL_FILES = r'(.+?\.pyc$|.+?\.pyo$|.+?\.log$)'
def del_dir(p):
    """Delete a directory."""
    if path.isdir(p):
        rmtree(p)
        print('D : %s' % p)
def del_file(p):
    """Delete a file."""
    if path.isfile(p):
        os.remove(p)
        print('F : %s' % p)
def gen_deletions(directory, del_dirs=DEL_DIRS, del_files=DEL_FILES):
    """Generate deletions."""
    patt_dirs = None if del_dirs == None else re.compile(del_dirs)
    patt_files = None if del_files == None else re.compile(del_files)
    for root, dirs, files in os.walk(directory):
        if patt_dirs:
            for d in dirs:
                if patt_dirs.match(d):
                    yield path.join(root, d)
        if patt_files:
            for f in files:
                 if patt_files.match(f):
                    yield path.join(root, f)
def confirm_deletions(directory):
    import Tkinter
    import tkMessageBox
    root = Tkinter.Tk()
    root.withdraw()
    res = tkMessageBox.askokcancel("Confirm deletions?",
        "Do you really wish to delete?\n\n"
        "Working directory:\n%s\n\n"
        "Delete conditions:\n(D)%s\n(F)%s"
        % (directory, DEL_DIRS, DEL_FILES))
    if res:
        print('Processing...')
        m, n = 0, 0
        for p in gen_deletions(directory):
            if path.isdir(p):
                del_dir(p)
                m += 1
            elif path.isfile(p):
                del_file(p)
                n += 1
        print('Clean %d dirs and %d files.' % (m, n))
        root.destroy()
    else:
        print('Canceled.')
        root.destroy()
    root.mainloop()
if __name__ == '__main__':
    import sys
    argv = sys.argv
    directory = argv[1] if len(argv) >= 2 else os.getcwd()
    confirm_deletions(directory)
    # import subprocess
    # subprocess.call("pause", shell=True)
Python 相关文章推荐
python为tornado添加recaptcha验证码功能
Feb 26 Python
python新手经常遇到的17个错误分析
Jul 30 Python
全面解析Python的While循环语句的使用方法
Oct 13 Python
Python自动化开发学习之三级菜单制作
Jul 14 Python
python 日期操作类代码
May 05 Python
tensorflow 加载部分变量的实例讲解
Jul 27 Python
在Python中使用gRPC的方法示例
Aug 08 Python
对python使用telnet实现弱密码登录的方法详解
Jan 26 Python
详解Django中views数据查询使用locals()函数进行优化
Aug 24 Python
python pymysql库的常用操作
Oct 16 Python
python 中 .py文件 转 .pyd文件的操作
Mar 04 Python
Python使用永中文档转换服务
May 06 Python
python使用xmlrpc实例讲解
Dec 17 #Python
python三元运算符实现方法
Dec 17 #Python
用python写asp详细讲解
Dec 16 #Python
python模块restful使用方法实例
Dec 10 #Python
python解析模块(ConfigParser)使用方法
Dec 10 #Python
python基础入门详解(文件输入/输出 内建类型 字典操作使用方法)
Dec 08 #Python
python socket网络编程步骤详解(socket套接字使用)
Dec 06 #Python
You might like
php采集速度探究总结(原创)
2008/04/18 PHP
PHP对象转换为数组函数(递归方法)
2012/02/04 PHP
php检索或者复制远程文件的方法
2015/03/13 PHP
PHP实现合并discuz用户
2015/08/05 PHP
浅谈PHP表单提交(POST&GET&URL编/解码)
2017/04/03 PHP
php利用云片网实现短信验证码功能的示例代码
2017/11/18 PHP
PHP按符号截取字符串的指定部分的实现方法
2018/09/10 PHP
PHP去除空数组且数组键名重置的讲解
2019/02/28 PHP
Javascript 实现TreeView CheckBox全选效果
2010/01/11 Javascript
浅谈javascript的call()、apply()、bind()的用法
2016/02/21 Javascript
Javascript实现图片不间断滚动的代码
2016/06/22 Javascript
详解Javascript函数声明与递归调用
2016/10/22 Javascript
数组Array的排序sort方法
2017/02/17 Javascript
React Native基础入门之调试React Native应用的一小步
2018/07/02 Javascript
微信小程序实现签到功能
2018/10/31 Javascript
详解Vue、element-ui、axios实现省市区三级联动
2019/05/07 Javascript
详解mpvue实现对苹果X安全区域的适配
2019/07/31 Javascript
javascript json对象小技巧之键名作为变量用法分析
2019/11/11 Javascript
如何阻止移动端浏览器点击图片浏览
2020/08/29 Javascript
创建与框架无关的JavaScript插件
2020/12/01 Javascript
[05:00]第二届DOTA2亚洲邀请赛主赛事第三天比赛集锦.mp4
2017/04/04 DOTA
python3.3使用tkinter开发猜数字游戏示例
2014/03/14 Python
python获取网页状态码示例
2014/03/30 Python
详解Python中列表和元祖的使用方法
2015/04/25 Python
详解python发送各类邮件的主要方法
2016/12/22 Python
Windows下安装Scrapy
2018/10/17 Python
nohup后台启动Python脚本,log不刷新的解决方法
2019/01/14 Python
jupyter 导入csv文件方式
2020/04/21 Python
浅谈python3打包与拆包在函数的应用详解
2020/05/02 Python
Python timeit模块原理及使用方法
2020/10/10 Python
英国Boots旗下太阳镜网站:Boots Designer Sunglasses
2018/07/07 全球购物
办公室副主任岗位职责
2013/11/25 职场文书
优秀实习生感言
2014/03/01 职场文书
工厂采购员岗位职责
2014/04/08 职场文书
主题教育活动总结
2014/05/05 职场文书
导游词之镇江-金山寺
2019/10/14 职场文书