相关疑难解决方法(0)

在os.walk中排除目录

我正在编写一个脚本,它下载到目录树(使用os.walk()),然后访问与特定文件扩展名匹配的每个文件.但是,由于我的工具将使用的某些目录树也包含子目录,而这些子目录又包含很多无用的东西(为了这个脚本的目的),我想我会为用户添加一个选项来指定要从遍历中排除的目录列表.

使用os.walk()很容易.毕竟,由我来决定我是否真的想要访问os.walk()产生的相应文件/目录,或者只是跳过它们.问题是,如果我有一个像这样的目录树:

root--
     |
     --- dirA
     |
     --- dirB
     |
     --- uselessStuff --
                       |
                       --- moreJunk
                       |
                       --- yetMoreJunk
Run Code Online (Sandbox Code Playgroud)

我想要排除uselessStuff及其所有子节点,os.walk()仍将下载到uselessStuff的所有(可能是数千个)子目录中,不用说,它会减慢很多东西.在一个理想的世界里,我可以告诉os.walk()甚至不会再让无用的孩子产生无用的东西了,但据我所知,没有办法做到这一点(是吗?).

有没有人有想法?也许有第三方库提供类似的东西?

python

132
推荐指数
2
解决办法
4万
查看次数

标签 统计

python ×1