def delete_empty_directories(working_dir): for item in os.listdir(working_dir): current_path = os.path.join(working_dir, item) if os.path.isdir(current_path): try: os.rmdir(current_path) except OSError: delete_empty_directories(current_path) try: os.rmdir(current_path) except OSError: pass
使用os.rmdir方法可以删除空目录,但当所操作的目录不为空时,该方法会抛出OSError异常。
因此,由此异常可以知道该目录不为空,因此采用递归的方式深入该目录遍历。
作为刚入门的菜鸟,一直在看你的个人站点来学习,谢谢您的分享!