本文主要給大家介紹了關於如何利用 python 對目錄下的檔案進行過濾刪除的相關資料,文中通過範例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。希望能協助到大家。
前言
最近學習了python,感覺挺多地方能用到它的。打包 測試 上傳 爬電影....而且代碼量是真少。人生苦短,我用python。而今天寫的這個是因為下載電影時總會發現除了視頻還會有這兩個檔案,甚至更多亂七八糟的檔案
看著這些檔案很不舒服。一個個檔案夾的刪太費勁了。還要注意不能誤刪。於是這個指令碼就出來了“根據副檔名過濾刪除檔案”,下面話不多說了,來一起看看詳細的介紹吧。
Step1
首先需要一個參數設定檔FilterParameter.py
formatFiles需要過濾的副檔名
dir需要進行刪除的目錄路徑
formatFiles = [ '.mp4', '.mkv', '.avi', '.rmvb']dir = "/Users/cuiyang/Movies/Fmovie/"
Step2
首先建立一個方法將目錄下所有檔案取出
def currentDirFile(dir): fileNames = os.listdir(dir) for fn in fileNames: fullFileName = os.path.join(dir, fn) if not os.path.isdir(fullFileName): delFile(fullFileName) else: currentDirFile(fullFileName)
再將需要刪除的檔案進行過濾,這裡是將檔案移動到廢紙簍(mac),萬一目錄寫錯了或者什麼原因誤刪那不GG。
def delFile(filePath): # 分隔尾碼名 formatName = os.path.splitext(filePath)[1] if not FilterParameter.formatFiles.__contains__(formatName) and \ filePath.split('/')[-1] != '.DS_Store': # mac下每個檔案夾都有個.DS_Store隱藏檔案這個不需要動 # print(filePath) shutil.move(filePath, '/Users/cuiyang/.Trash')# 移動到廢紙簍
對 就是這麼簡單 相信會python的同學一下就看懂了。