使用os.walk时跳过某个文件夹

时间:2017-07-15 12:51:42

标签: python os.walk

这是我的代码:

rootdir_path_without_slash = '/home/winpc/Downloads/Prageeth/backups/Final/node-wen-app'
rootdir_path_with_slash= '/home/winpc/Downloads/Prageeth/backups/Final/node-wen-app/'


dir_src = (rootdir_path_with_slash)
for subdir, dirs, files in os.walk(rootdir_path_without_slash):
    for file in files:
        file_name=os.path.join(subdir, file)
        if file_name.endswith('.html'):
            print file_name

此处此代码导航来自给定源目录的所有子目录以搜索.html文件。如果找到节点模块文件夹,我需要跳过。请帮助我。

1 个答案:

答案 0 :(得分:2)

您需要在根目录上添加if条件,以避免遍历node_modules或其任何后代。你会想要:

for subdir, dirs, files in os.walk(rootdir_path_without_slash):
    if 'node_modules' in subdir:
        continue
    ... # rest of your code

此外,subdir这里用词不当,第一个参数os.walk返回的是根路径。