Python模块 os.walk


Os.walk

  os.walk(top,topdown=True,onerror=None,followlinks=False)

  os.walk()是python中内置(built-in)的目录树生成(directory tree generator)函数。

  对于每一个在top目录下的子目录(包括top目录本身),该函数都会生成一个包含三个元素的元组(tuple): (dirpath, dirnames, filenames)。(string,list,list)

  dirpath是目录名称(string),dirnames是一个包含dirpath目录下所有子目录名称的列表(list),filenames是一个包含dirpath目录下所有非目录的文件名称(名称不包括路径)列表(list)。如果需要获取文件的整个路径(从top开始),可以使用os.path.join(dirpath,name);或者使用os.path.abspath(name)获取文件的完整路径(在Linux系统下,从"/"开始)。

  

  示例一:

  目录:~/python/flask/demos/template$

  使用ls *命令遍历template目录,如下:

  

  使用os.walk遍历当前目录(.),python首先遍历当前目录,打印目录名称(.),接着打印目录下的非目录文件(file),再以此类推将static等目录遍历完成。

  

 

  完整代码如下:

  

import os


def walk(cwd = r'D:\PyCharm\python\practice'):
    for root, dirs, files in os.walk(cwd):
        # print(root)  # 打印当前目录下的所有子目录的绝对路径
        # print(dirs)  # 打印每个目录下的子目录列表
        # print(files)  # 打印所有目录下文件列表
        print(root)
        for file in files:
            print('\t' + file)


walk()

 

但是还有更直观简单的方法:使用tree命令

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM