[Python] 遍歷資料夾取得檔案名稱和目錄

閱讀時間約 2 分鐘

需求模組

import os

遍歷資料夾

這個程式碼示範了如何使用遞迴遍歷指定資料夾中的所有檔案和目錄。當遇到檔案時,它會使用縮排列印檔案名稱,當遇到目錄時,它會使用縮排列印目錄名稱,並且遞迴調用traverse_folder函數處理子目錄。
您可以將 'C:/Users/User/python/path' 替換為您要遍歷的資料夾的實際路徑。運行程式碼後,它會遞迴地列印資料夾中的所有檔案和目錄,並使用縮排來顯示層次結構。
請注意,indent參數用於控制縮排的數量,以便更好地表示層次結構。在遞迴調用時,將 indent + 4 傳遞給下一級目錄,以增加縮排的寬度。您可以根據需要自定義縮排的數量。
def traverse_folder(folder_path, indent=0):
    # 獲取資料夾中的所有檔案和子目錄
    items = os.listdir(folder_path)
    
    for item in items:
        # 構建完整的路徑
        item_path = os.path.join(folder_path, item)
        
        if os.path.isfile(item_path):
            # 如果是檔案,列印檔案名稱
            print(" " * indent + "檔案:", item)
        elif os.path.isdir(item_path):
            # 如果是目錄,列印目錄名稱,並遞迴處理目錄
            print(" " * indent + "目錄:", item)
            traverse_folder(item_path, indent + 4)
# 指定資料夾路徑
folder_path = 'C:/Users/User/python/path'
# 遍歷資料夾中的檔案和目錄
traverse_folder(folder_path)
即將進入廣告,捲動後可繼續閱讀
為什麼會看到廣告
57會員
116Content count
這裡將以輕鬆風格,深入探討程式設計的基礎和高級概念。從程式語言到演算法,我們將以易懂的方式解釋每個主題,讓你輕鬆掌握。無論你是初學者或有經驗者,都能在這裡找到適合你的內容。無論你的目標是成為專業開發者還是擴展知識,我們都會陪伴你一同成長!
留言0
查看全部
發表第一個留言支持創作者!
程式輕鬆玩 的其他內容
在Python中,您可以使用os模組進行文件的新增和刪除操作。
在Python中,join()和split()是用於處理字串的切割與組合的方法。
安裝 pyautogui 在開始之前,我們需要先安裝 pyautogui 模塊。
物理中最基礎的表現就是碰撞,像是這次的示範是左邊的方塊撞擊右邊的方塊並彈開,這就是一種碰撞。在Unity裡想要實現這種碰撞的表現要有兩種東西,Rigidbody 及Collider 這兩種Component。
遊戲裡面都會有導航系統,在Unity裡面就是利用NavMesh實現這個功能。 其實說是導航系統,NavMesh是建立導航系統的可移動範圍,再根據你的需求寫導航功能。
在Python中,您可以使用os模組進行文件的新增和刪除操作。
在Python中,join()和split()是用於處理字串的切割與組合的方法。
安裝 pyautogui 在開始之前,我們需要先安裝 pyautogui 模塊。
物理中最基礎的表現就是碰撞,像是這次的示範是左邊的方塊撞擊右邊的方塊並彈開,這就是一種碰撞。在Unity裡想要實現這種碰撞的表現要有兩種東西,Rigidbody 及Collider 這兩種Component。
遊戲裡面都會有導航系統,在Unity裡面就是利用NavMesh實現這個功能。 其實說是導航系統,NavMesh是建立導航系統的可移動範圍,再根據你的需求寫導航功能。
你可能也想看
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
在求學階段,你已經對代數的計算熟到不能再熟,所以變數(variable)對你來說應該不至於太陌生,先來看看以下這個例子:   
Thumbnail
warpAffine 和 warpPerspective 都是 OpenCV 中用於圖像變換的函數,主要差異在於這兩種函數所使用的變換矩陣的類型和適用場景。 本文主要討論warpAffine,另外warpPerspective可以此篇文章
Thumbnail
本文主要應用deepface的正面(frontal)人臉檢測的預設模型,使用analyze 函數,用於分析一張人臉圖像的情感(emotion)。 在Colab上實現,若用其他平台需稍微修改程式碼。 Deepface Deepface是一個輕量級的Python人臉辨識和臉部屬性分析
Thumbnail
在Python中,有三種變數作用域:全域、區域和封閉。 區域作用域(Local Scope): 在函式內部定義的變數具有區域作用域,它們只能在該函式內部訪問。 例如: def my_function(): local_variable = 10
Thumbnail
python Streamlit連動github程式碼實現YoloV8網頁版偵測物件 先致敬,YoloV8原作Github程式碼 Streamlit網頁 實現YoloV8 偵測物件 套用模型為YoloV8(YOLOv8n)最小模型,因github上傳檔案最大上限為25mb 導入圖像(搜尋街景
Thumbnail
上一篇「【Google Colab Python系列】 初探Whisper: 來對一段Youtube影片進行辨識吧!」我們介紹了Whisper的基本用法及功能,這次我們除了語音辨識之外,還要下載辨識後的字幕檔,我想這對於我們常常看到沒有字幕的影片,若想要進行辨識與翻譯時非常有幫助。 這次的篇章主要做
Thumbnail
這個篇章主要是讓我們能夠熟悉Whisper的安裝與使用方式,並簡單的對Youtube影片進行線上翻譯的工作,主軸在於了解一下整個Whisper使用方式到底是簡單還是複雜,就讓我們一起來玩玩看吧! 在這之前我們還是說一下Whisper它是什麼樣的一個工具,能夠做什麼? Whisper 是OpenAI
Thumbnail
今天繼續我們股市LINE BOT的訊息顯示教學,繼上次我們查詢了平均股利的資訊後,這次我們來製作如何查詢歷年股利的部份,其實大同小異,就差在爬取的網站資料差異而已,那我們就開始今天的教學吧!!
Thumbnail
Python依據變數有效的範圍可以區分為全域變數(Global variable)或區域變數(Local variable)。在函數內宣告的變數為區域變數,有效範圍只有在函數內,函數外部無法引用這個變數;在函數以外宣告的變數為全域變數,它的有效範圍為整個檔案,並且在函數內部也可以引用這個變數。
Thumbnail
我希望透過在好學校開設「Python 的 50+ 練習:資料科學學習手冊」,讓學生一步步完成這門課程所有的觀念講解、範例實作以及練習之後,扎實地將 Python 程式設計與資料科學應用納入自己的技能組,成為一位擅長寫程式處理資料的分析師,大幅提升工作掌握度與職涯發展性!
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
在求學階段,你已經對代數的計算熟到不能再熟,所以變數(variable)對你來說應該不至於太陌生,先來看看以下這個例子:   
Thumbnail
warpAffine 和 warpPerspective 都是 OpenCV 中用於圖像變換的函數,主要差異在於這兩種函數所使用的變換矩陣的類型和適用場景。 本文主要討論warpAffine,另外warpPerspective可以此篇文章
Thumbnail
本文主要應用deepface的正面(frontal)人臉檢測的預設模型,使用analyze 函數,用於分析一張人臉圖像的情感(emotion)。 在Colab上實現,若用其他平台需稍微修改程式碼。 Deepface Deepface是一個輕量級的Python人臉辨識和臉部屬性分析
Thumbnail
在Python中,有三種變數作用域:全域、區域和封閉。 區域作用域(Local Scope): 在函式內部定義的變數具有區域作用域,它們只能在該函式內部訪問。 例如: def my_function(): local_variable = 10
Thumbnail
python Streamlit連動github程式碼實現YoloV8網頁版偵測物件 先致敬,YoloV8原作Github程式碼 Streamlit網頁 實現YoloV8 偵測物件 套用模型為YoloV8(YOLOv8n)最小模型,因github上傳檔案最大上限為25mb 導入圖像(搜尋街景
Thumbnail
上一篇「【Google Colab Python系列】 初探Whisper: 來對一段Youtube影片進行辨識吧!」我們介紹了Whisper的基本用法及功能,這次我們除了語音辨識之外,還要下載辨識後的字幕檔,我想這對於我們常常看到沒有字幕的影片,若想要進行辨識與翻譯時非常有幫助。 這次的篇章主要做
Thumbnail
這個篇章主要是讓我們能夠熟悉Whisper的安裝與使用方式,並簡單的對Youtube影片進行線上翻譯的工作,主軸在於了解一下整個Whisper使用方式到底是簡單還是複雜,就讓我們一起來玩玩看吧! 在這之前我們還是說一下Whisper它是什麼樣的一個工具,能夠做什麼? Whisper 是OpenAI
Thumbnail
今天繼續我們股市LINE BOT的訊息顯示教學,繼上次我們查詢了平均股利的資訊後,這次我們來製作如何查詢歷年股利的部份,其實大同小異,就差在爬取的網站資料差異而已,那我們就開始今天的教學吧!!
Thumbnail
Python依據變數有效的範圍可以區分為全域變數(Global variable)或區域變數(Local variable)。在函數內宣告的變數為區域變數,有效範圍只有在函數內,函數外部無法引用這個變數;在函數以外宣告的變數為全域變數,它的有效範圍為整個檔案,並且在函數內部也可以引用這個變數。
Thumbnail
我希望透過在好學校開設「Python 的 50+ 練習:資料科學學習手冊」,讓學生一步步完成這門課程所有的觀念講解、範例實作以及練習之後,扎實地將 Python 程式設計與資料科學應用納入自己的技能組,成為一位擅長寫程式處理資料的分析師,大幅提升工作掌握度與職涯發展性!