Python 递归删除非空目录(包括子目录以及文件)

时间:2022-04-22 05:43:57

Python的OS模块自带rmdir和removedirs函数用于删除目录,但是两者都不能删除非空目录,以下代码定义了一个函数 remove_dir 用于删除非空目录。

 #作者官网 http://www.phpwechat.com

 import os

 def remove_dir(dir):
dir = dir.replace('\\', '/')
if(os.path.isdir(dir)):
for p in os.listdir(dir):
remove_dir(os.path.join(dir,p))
if(os.path.exists(dir)):
os.rmdir(dir)
else:
if(os.path.exists(dir)):
os.remove(dir) remove_dir(r'K:/python/noexsit2/') #函数使用
print 'ok'

函数使用了递归,由于是Python新人,仅借此以抛砖引玉。