當檔案的位置在不同系統中不同時,在 Python 中尋找檔案可能是一個挑戰。幸運的是,Python 提供了 os.walk 模組,讓您可以輕鬆遍歷目錄並定位檔案。
os.walk 用於檔案搜尋
os.walk 建立一個生成器迭代目錄及其子目錄的對象,每次迭代產生三個元組:
尋找單一檔案
要尋找特定檔案的第一次出現,只需迭代產生的元組並檢查檔案名稱是否在檔案列表:
import os
def find(name, path):
for root, dirs, files in os.walk(path):
if name in files:
return os.path.join(root, name)
查找文件的所有出現位置
要查找文件的所有出現位置,請創建一個列表來存儲匹配項:
def find_all(name, path):
result = []
for root, dirs, files in os.walk(path):
if name in files:
result.append(os.path.join(root, name))
return result
符合文件模式
要搜尋與模式相符的文件,請使用 fnmatch 模組:
import os, fnmatch
def find(pattern, path):
result = []
for root, dirs, files in os.walk(path):
for name in files:
if fnmatch.fnmatch(name, pattern):
result.append(os.path.join(root, name))
return result
find('*.txt', '/path/to/dir')
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3