zoukankan      html  css  js  c++  java
  • 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:PyCharmpythonpractice'):
        for root, dirs, files in os.walk(cwd):
            # print(root)  # 打印当前目录下的所有子目录的绝对路径
            # print(dirs)  # 打印每个目录下的子目录列表
            # print(files)  # 打印所有目录下文件列表
            print(root)
            for file in files:
                print('	' + file)
    
    
    walk()

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

     

    Resistance is Futile!
  • 相关阅读:
    poj3718 Facer's Chocolate Dream
    codeforces 917D Stranger Trees
    uoj#349 【WC2018】即时战略
    bzoj5153 [Wc2018]州区划分
    bzoj5152 [Wc2018]通道
    loj2001[SDOI2017]树点染色
    loj2000[SDOI2017]数字表格
    Atcoder arc092
    bzoj4826[hnoi2017]影魔
    bzoj4827 [hnoi2017]礼物
  • 原文地址:https://www.cnblogs.com/noonjuan/p/10367489.html
Copyright © 2011-2022 走看看