從目錄取得檔案
擷取目錄的檔案清單是 Python 程式設計中的常見任務。一種方法是使用 os.listdir(),它會傳回目錄中的所有項目,包括檔案和目錄。
方法1:使用os.path.isfile()
要只列出文件,請使用os.path.isfile():
from os import listdir from os.path import isfile, join mypath = 'path/to/directory' onlyfiles = [f for f in listdir(mypath) if isfile(join(mypath, f))]
方法2:使用os.walk()
os.walk() 迭代目錄及其子目錄,為其存取的每個目錄傳回一個元組。這個元組包含三個列表:一個用於文件,一個用於目錄,一個用於當前目錄本身。
from os import walk mypath = 'path/to/directory' filenames = next(walk(mypath), (None, None, []))[2] # [] if no files
這種方法提供了更完整的目錄結構表示。若要僅列出目前目錄中的文件,請在第一次迭代後中斷循環:
from os import walk f = [] for (dirpath, dirnames, filenames) in walk(mypath): f.extend(filenames) break
以上是如何使用 Python 高效地僅列出目錄中的檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!