python的文件怎么删除干净_python 实现彻底删除文件夹和文件夹下的文件
python 中有很多内置库可以帮忙用来删除文件夹和文件,当面对要删除多个非空文件夹,并且目录层次大于3层以上时,仅使用一种内置方法是无法达到彻底删除文件夹和文件的效果的,比较low的方式是多次调用直到删除。但是,我们可以结合多个内置库函数,达到一次删除非空文件夹,不管其目录层次有多深。
import os
import shutil
import traceback
import globalvar
def misc_init()
# clean the test result folder
# get the current path
current_path = os.path.split(os.path.realpath(__file__))[0]
# some folder not delete
except_folders = globalvar.Except_Folders
# get the folder uder current path
current_filelist = os.listdir(current_path)
for f in current_filelist:
# f should be a absolute path, if python is not run on current path
if os.path.isdir(os.path.join(current_path,f)):
if f in except_folders:
continue
else:
real_folder_path = os.path.join(current_path, f)
try:
for root, dirs, files in os.walk(real_folder_path):
for name in files:
# delete the log and test result
del_file = os.path.join(root, name)
os.remove(del_file)
logger.info('remove file[%s] successfully' % del_file)
shutil.rmtree(real_folder_path)
logger.info('remove foler[%s] successfully' % real_folder_path)
except Exception, e:
traceback.print_exc()
主要步骤:
1、利用os.listdir列出当前路径下的文件夹,根据需要可以跳过不想删除的文件夹
2、利用os.walk可以递归遍历当前路径文件夹内的文件,利用os.remove删除掉文件
3、使用shutil.retree递归删除掉这些空文件夹
注意:思想是先删除掉文件目录树下的所有文件,然后在递归删除掉空文件夹。globalvar是自定义的全局变量文件,非python库
python的文件怎么删除干净_python 实现彻底删除文件夹和文件夹下的文件相关推荐
- python创建和删除文件有什么区别_python创建和删除文件
#!/usr/bin/python #-*-coding:utf-8-*- #指定编码格式,python默认unicode编码 import os directory = "./dir&qu ...
- python从txt拿取数据_python requests + xpath 获取分页详情页数据存入到txt文件中
直接代码,如有不懂请加群讨论 # *-* coding:utf-8 *-* # import json import requests import pytesseract import time i ...
- MySql完全删除干净的方法(删除不干净导致安装服务端的时候启动服务这个步骤卡死)
MySql卸载重新安装出现Start service没有响应的解决办法(64位) 昨天因为自己手欠,不小心把mysql卸载了,于是又得重新安装,但是每次到了最后一步就报没有响应,于是就去寻找解决办法, ...
- debian 文件夹中文件大小_Linux下查看文件和文件夹大小 删除日志
场景:在sts中执行自动部署时候maven提示No space left on device错误,后来经检查发现是磁盘空间满了,用下面的方法分析发现tomcat下面的logs目录占用了很大的空间,删除 ...
- lua linux获取文件夹,Linux:删除目录下的文件的10种方法
删除当前目录下的文件 1.rm -f * #最经典的方法,删除当前目录下的所有类型的文件 2.find . -type f -delete或find . -type f -exec rm -f {} ...
- 如何在ftp服务器下查找文件夹,查找ftp服务器下的文件夹名
查找ftp服务器下的文件夹名 内容精选 换一换 Linux x86-64(64位)服务器,常见的有EulerOS.Ubuntu.Debian.CentOS.OpenSUSE等.Windows 7及以上 ...
- ftp 服务器新建文件夹,ftp服务器路径下新建文件夹
ftp服务器路径下新建文件夹 内容精选 换一换 单击"源码迁移"后面的,打开如图1所示界面,参数描述如表1所示.配置参数后单击"开始分析".以下内容中的&quo ...
- windows 技术篇 - cmd命令查看当前目录下的所有文件和文件夹以及所有子目录下的文件,dir命令的使用方法
dir /b 可以查看当前路径下的所有文件和文件夹. dir /b /s 可以查看当前路径下的所有文件和文件夹以及子目录下的文件. 这是目录,直接在路径里输入 cmd 回车可以进入 cmd 的该路径下 ...
- python创建和删除文件有什么区别_python创建与删除临时文件夹的例子
本节主要内容: python创建与删除临时文件夹. 1,python创建文件夹 代码示例: import tempfile, os tempfd, tempname = tempfile.mkstem ...
最新文章
- 2020人工神经网络第一次作业-参考答案第十部分-第三小题
- nodejs-stream部分
- 中国人民大学_《组织行为学》_17.节点人物
- 学习android操作系统,学习Android手机操作系统笔记总结
- python窗口显示表格_Python爬虫之GUI图表
- [Leedcode][JAVA][第42题][动态规划][双指针][栈]
- ImportError: cannot import name *
- 1.Linux 程序设计入门
- XML可扩展语言的发展
- MySQL ( Ubuntu16.04 )
- VTD的官方help翻译-ROD部分(10~15章)
- 2022低压电工考试题库模拟考试平台操作
- 消除IBM P750小机上的黄色报警灯
- Gmail配置邮箱客户端
- 苹果电脑mysql安装流程_mac系统下安装mysql步骤
- 三、Redis在SpringBoot中使用案例
- 十五数码难题 A*算法及深度优先算法实现
- JSP设置Excel表格换行_外企大公司的 Excel 表格,都是这样设置隐藏的
- java中if(a.c())_if 语句中的条件语句只能是() 类型。_学小易找答案
- 如何使用Google Voice接收验证码?
热门文章
- linux终端下如何分屏,ubuntu terminal 终端分屏
- .net6智能提示设置为中文
- 智能运动鞋方案/案列/APP/小程序/网站
- python的flask框架显示柱状图_使用Python的Flask框架,结合Highchart,动态渲染图表...
- np.nan np.NAN np.NaN
- 计算机技术应用节课,矢志不渝追求卓越,上好每一节课—记滁州应用技术学校黄鹂...
- 【ROM制作工具】小白轻松一键搞定纯净ROM刷机包
- 计算机多核启动原理,多核cpu工作原理 不进来看看?
- [R语言] WGCNA入门教程
- 13个可以为网站创建360度全景视图的工具