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


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

 1 #作者官网 http://www.phpwechat.com
 2 
 3 import os
 4 
 5 def remove_dir(dir):
 6     dir = dir.replace('\\', '/')
 7     if(os.path.isdir(dir)):
 8         for p in os.listdir(dir):
 9             remove_dir(os.path.join(dir,p))
10         if(os.path.exists(dir)):
11             os.rmdir(dir)
12     else:
13         if(os.path.exists(dir)):
14             os.remove(dir)
15 
16 remove_dir(r'K:/python/noexsit2/') #函数使用
17 print 'ok'

 

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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM