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