1. 程式人生 > >分享:查詢某個目錄及子目錄下的所有檔案---------關於os.walk及其相關方法。

分享:查詢某個目錄及子目錄下的所有檔案---------關於os.walk及其相關方法。

在寫 tools 時,os模組是非常強大的,它提供了很多盡人意的方法。

比如:windows作業系統下我想查詢某個folder下以及子目錄下內包含的所有 “.py” 檔案。就可以使用os模組這樣做:

import os

file_path_list = []

for root,dirs,files in os.walk(scripts_path):
        if files:
            for file in files:
                if file[-3:].lower() == ".py":
                    files_path_list.append(os.path.join(root,file).replace("\\","/"))

這樣我們就把所有的 .py 結尾的檔案路徑都儲存在了files_path_list列表中了。

同樣的到了,想要查詢某個目錄以及子目錄下所有的圖片啊,TXT檔案等等都可以這樣操作,只需把判斷條件改變下就OK了。

os.path.join()用來拼接兩個或多個路徑,但這裡有坑,可以自己查查。

os.path.realpath(sys.argv[0])反會當前執行指令碼所在的路徑

os.path.split(os.path.realpath(sys.argv[0]))[0] 去除指令碼名字後的目錄

os.path.exists(path)判斷某個路徑是否存在