在Python 中列出子目錄
文章推薦指數: 80 %
Python 中有3 種有效的方法可以列出指定目錄內的所有子目錄,glob.glob()函式、os.scandir()函式和os.walk()函式。
Python貼士
Python中的條件賦值運算子
使用Python播放Mp3檔案
使用Python檢查作業系統
在Python中從字串中刪除逗號
Python中如何將位元組bytes轉換為整數int
如何將整型int轉換為位元組bytes
如何在Python中獲取和增加最大遞迴深度
如何建立和啟用Python虛擬執行環境virtualenv
reportthisad
貼士文章
Python貼士
在Python中列出子目錄
使用Python中的glob模組列出子目錄
使用Python中的os.scandir()函式列出子目錄
使用Python中的os.walk()函式列出子目錄
在Python中,你可以使用三種有效的方法來列出指定目錄中的所有子目錄:glob.glob()函式、os.scandir()函式和os.walk()函式。
本教程將演示如何使用這些函式在Python中列出子目錄。
使用Python中的glob模組列出子目錄
glob模組用於獲取匹配特定模式的路徑名。
我們可以使用Python的glob模組中的glob()函式,通過在目錄路徑末尾指定/*/來列出指定主目錄的所有子目錄。
以下程式片段向我們展示瞭如何使用glob模組列出主目錄中的所有子目錄:
importos
fromglobimportglob
glob(os.getcwd()+"/*/",recursive=True)
輸出:
['/content/sample_data/','/content/subdirectory/']
我們在上面的程式碼中使用glob模組列出了當前工作目錄的所有子目錄。
這種方法的缺點是它不會顯示任何隱藏目錄或目錄名稱以句點.開頭的目錄;它只顯示直接子目錄。
使用Python中的os.scandir()函式列出子目錄
os是Python中的一個內建模組,可用於許多與作業系統相關的功能,例如檔案儲存。
os.scandir()函式可用於列出指定主目錄的所有子目錄。
此函式將目錄路徑作為輸入引數並返回一個迭代器,該迭代器可用於迭代路徑內的檔案和目錄。
以下程式碼片段向我們展示瞭如何使用os.scandir()函式列出主目錄中的所有子目錄:
importos
[f.pathforfinos.scandir(os.getcwd())iff.is_dir()]
輸出:
['/content/.config',
'/content/.ipynb_checkpoints',
'/content/sample_data',
'/content/subdirectory']
我們在上面的程式碼中使用os.scandir()函式列出了當前工作目錄的所有子目錄。
此過程是對先前方法的改進,因為它還列出了隱藏目錄或目錄名稱以句點.開頭的目錄。
這種方法唯一的缺點是它只顯示主父目錄的直接子目錄。
它不會獲取主目錄中的子子目錄。
使用Python中的os.walk()函式列出子目錄
os.walk()函式是另一種方法,可用於在Python中列出單個主目錄中的所有子目錄。
os.walk()函式將主目錄的路徑作為輸入引數並返回一組元組,其中每個元組的第一個元素是目錄樹中子目錄的路徑。
這包括所有子目錄及其子目錄,直到目錄樹結束。
os.walk()函式還為我們提供了隱藏目錄或目錄名稱以句點.開頭的目錄。
以下程式碼片段向我們展示瞭如何使用os.walk()函式列出主目錄中的所有子目錄:
importos
[x[0]forxinos.walk(os.getcwd())]
輸出:
['/content',
'/content/.config',
'/content/.config/logs',
'/content/.config/logs/2021.05.06',
'/content/.config/configurations',
'/content/.ipynb_checkpoints',
'/content/sample_data',
'/content/sample_data/.ipynb_checkpoints',
'/content/sample_data/subsubdirectory',
'/content/subdirectory']
我們在上面的程式中使用os.scandir()函式列出了當前工作目錄的所有子目錄。
如我們所見,輸出顯示了目錄樹中的所有目錄。
結果還包括所有隱藏目錄。
儘管os.walk()方法向我們展示了所有子目錄和所有隱藏目錄的子目錄,上面討論的所有方法都有自己獨特的用例,並且在不同的場景中都有幫助。
我們討論的最佳方法取決於你要解決的具體問題。
相關文章-PythonDirectory
Python計算目錄中的檔案數
在Python中對資料夾中的每個檔案執行命令
用Python開啟目錄中的所有檔案
在Mac上安裝Pip3在Python中列印中間沒有空格的值
xx
延伸文章資訊
- 1python列出資料夾下所有檔案的四個方法 - 程式人生
#方法1:使用os.listdir import os for filename in os.listdir(r'c:\windows'): print... Java 列出資料夾下所有檔案,符...
- 2(Python)查詢資料夾下的所有檔案名稱. os.listdir | AI反斗城
os.listdir 列出了給定資料夾下的所有檔案和資料夾,所以我們需要新增額外的程式碼來只把檔案給提取出來。 os.listdir 只返回相對給定資料夾dirPath 的相對路徑, ...
- 3用Python 開啟目錄中的所有檔案 - Delft Stack
os 模組中的 listdir() 函式 用於列出指定目錄中的所有檔案。此函式將指定的目錄路徑作為輸入引數,並返回該目錄中所有檔案的名稱。我們可以使用 os.
- 4Python 列出目錄中所有檔案教學:os.listdir 與os.walk - GT Wang
這裡介紹如何在Python 中列出目錄中的檔案,並且配合各種篩選方式,取得符合 ... #!/usr/bin/python # -*- coding: utf-8 -*- from os imp...
- 5Python列出目錄所有檔案| CYL菜鳥攻略 - - 點部落
取得檔案列表os.listdir. 取得指定目錄中所有的檔案與子目錄名稱 from os import listdir from os.path import isfile, isdir, jo...