首頁  >  文章  >  後端開發  >  如何自訂 os.walk() 的輸出以視覺化 Python 中的遞歸目錄結構?

如何自訂 os.walk() 的輸出以視覺化 Python 中的遞歸目錄結構?

Patricia Arquette
Patricia Arquette原創
2024-11-06 10:03:02553瀏覽

How can I customize the output of os.walk() to visualize a recursive directory structure in Python?

Python 中使用os.walk() 進行遞歸目錄遍歷

在Python 中,os.walk() 函數是一個強大的工具遞歸遍歷目錄和子目錄。透過利用其功能,您可以在檔案系統中導航並有效地存取檔案和目錄。

使用os.walk() 列印目錄結構

考慮以下內容code:

import os

for root, dirs, files in os.walk("."):
    print(root)
    print("")
    for items in fnmatch.filter(files, "*"):
        print("..." + items)
    print("")

此程式碼將遍歷目前目錄並列印其中的目錄和檔案。但是,輸出不會採用所需的格式:目錄和文件將以相同的方式列出。

自訂目錄遍歷輸出

列印目錄和根據需要的檔案結構,如:

A
---a.txt
---b.txt
---B
------c.out

其中A、B為目錄,其餘為文件,可以修改程式碼如下:

import os

for root, dirs, files in os.walk("."):
    path = root.split(os.sep)
    print((len(path) - 1) * '---', os.path.basename(root))
    for file in files:
        print(len(path) * '---', file)

修改後的程式碼:

  • 使用os.sep 分隔符號將路徑拆分為列表,該分隔符號表示當前作業系統上的目錄分隔符號。
  • 依路徑組件的數量減 1。
  • 使用縮排和目錄或檔案的基本名稱的組合,以所需的格式顯示結構。

透過調整縮排並使用basename 函數,您可以自訂輸出以滿足您的特定要求。這種技術可讓您視覺化目錄層次結構並更方便地存取檔案和目錄。

以上是如何自訂 os.walk() 的輸出以視覺化 Python 中的遞歸目錄結構?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn