首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >非递归os.walk()

非递归os.walk()
EN

Stack Overflow用户
提问于 2010-11-07 19:57:37
回答 5查看 22.8K关注 0票数 43

我正在寻找一种像os.listdir()一样进行非递归os.walk()遍历的方法。但我需要以与os.walk()返回相同的方式返回。有什么想法吗?

提前谢谢你。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-11-07 20:00:45

next(os.walk(...))
票数 42
EN

Stack Overflow用户

发布于 2016-11-01 03:46:30

在for循环文件名后添加break

for root, dirs, filenames in os.walk(workdir):
    for fileName in filenames:
        print (fileName)
    break   #prevent descending into subfolders

这是因为(默认情况下) os.walk首先列出请求的文件夹中的文件,然后进入子文件夹。

票数 49
EN

Stack Overflow用户

发布于 2013-01-30 23:51:29

我的更参数化的解决方案是:

for root, dirs, files in os.walk(path):  
    if not recursive:  
        while len(dirs) > 0:  
            dirs.pop()  

    //some fency code here using generated list

编辑:修复,如果/当问题。谢谢,@Dirk van Oosterbosch :}

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4117588

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档