Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Directory Python os.walk:如何在其子目录全部删除后删除目录_Directory_Delete File_Os.walk - Fatal编程技术网

Directory Python os.walk:如何在其子目录全部删除后删除目录

Directory Python os.walk:如何在其子目录全部删除后删除目录,directory,delete-file,os.walk,Directory,Delete File,Os.walk,我有一个多层目录。我想从最低级别的目录开始删除所有空目录。我当前的代码不会删除在其子目录全部删除后变为空的更高级别目录,因为os.walk可能不会更新路径?我应该如何修改它,使其每次都更新root for root, dirs, files in os.walk(starting_directory, topdown=False): if not files and not dirs: shutil.rmtree(root) 这个脚本将完成这项工作。转到目录树的最底部。

我有一个多层目录。我想从最低级别的目录开始删除所有空目录。我当前的代码不会删除在其子目录全部删除后变为空的更高级别目录,因为os.walk可能不会更新路径?我应该如何修改它,使其每次都更新
root

for root, dirs, files in os.walk(starting_directory, topdown=False):
    if not files and not dirs:
        shutil.rmtree(root)

这个脚本将完成这项工作。转到目录树的最底部。。。目录是空的吗?对然后删除并从那里开始。用于清理空文件夹

#/usr/bin/python
"""
*
*此python脚本使用自底向上的方法删除空目录。
*它可以从您当前的目录中运行,并将删除所有已删除的目录
*完全为空-从最低级别开始工作-直到当前目录。
"""
导入操作系统
对于os.walk(“.”,top-down=False)中的根目录、目录和文件:
对于文件中的名称:
打印(os.path.join(根目录,名称))
对于目录中的名称:
打印(“…中表示目录中的名称”,名称)
打印(os.path.join(根目录,名称))
如果len(os.listdir(os.path.join(root,name))==0:
打印(“目录为空…正在删除”)
os.rmdir(os.path.join(根,名称))
其他:
打印(“目录不为空”)