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目錄,如下:

  《Python模塊 os.walk》

  使用os.walk遍歷當前目錄(.),python首先遍歷當前目錄,打印目錄名稱(.),接着打印目錄下的非目錄文件(file),再以此類推將static等目錄遍歷完成。

  《Python模塊 os.walk》

 

  完整代碼如下:

  

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命令

《Python模塊 os.walk》 

点赞

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *