os.walk

Posted morganh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了os.walk相关的知识,希望对你有一定的参考价值。

列出所有文件的完整路径。

import os
import glob

imagenet_dir = "/dataset/"

for root,dirs,files in os.walk(imagenet_dir):
    for f in files:
        print(os.path.join(root,f))

  

 

 

https://blog.csdn.net/moshlwx/article/details/52694397

 

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os


def find_dir(string, path=‘..‘):
    print(‘cur dir:%s‘ % os.path.abspath(path))
    for filename in os.listdir(path):
        deeper_dir = os.path.join(path, filename)
        if os.path.isfile(deeper_dir) and string in filename:
            print(‘%s with ‘t‘ in its name‘ % filename)
        if os.path.isdir(deeper_dir):
            find_dir(string, deeper_dir)

if __name__ == ‘__main__‘:
    find_dir(‘t‘)
————————————————
版权声明:本文为CSDN博主「moshlwx」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/moshlwx/article/details/52694397

  


从上面的代码可以看出,如果把刚开始的代码精简一下,理顺了基本就是这样的结果,可惜经验太少,把自己绕糊涂了,不过刚开始,继续加油吧。

 

import os

def detect_walk(dir_path):
    for root, dirs, files in os.walk(dir_path):
        for filename in files:        
            print "file:%s
" % filename
        for dirname in dirs:
            print "dir:%s
" % dirname

if __name__ == "__main__":
    detect_walk(".")
————————————————
版权声明:本文为CSDN博主「moshlwx」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/moshlwx/article/details/52694397

  


用os.walk()可以不用考虑通过递归遍历目录及其子目录的问题,直接调用操作就好了,十分简单清楚,只是之前没有好好理解os.walk()的用法。所以这方面能力也是很重要的,别人造好的轮子也要知道怎么用才好。


————————————————
版权声明:本文为CSDN博主「moshlwx」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/moshlwx/article/details/52694397

以上是关于os.walk的主要内容,如果未能解决你的问题,请参考以下文章

python使用简单的os.walk生成目录树

如何使用 os.walk 或 glob.glob 获取目录中所有类型的文件扩展名

python中的os.walk

OS.Walk For Raspbian 上的循环难题

os.walk详解

Python os.walk() 方法遍历文件目录