一、os模塊介紹
Python的os模塊提供了操作操作系統的方法,如文件和目錄管理、進程管理等。在文件和目錄管理方面,常用的方法有os.getcwd()獲取當前工作目錄,os.chdir(path)改變當前工作目錄,os.listdir(path)列出指定目錄下的文件和文件夾,os.remove(path)刪除指定文件,os.mkdir(path)創建目錄等方法。
二、os.removedirs方法介紹
os.removedirs(path)方法可以刪除指定目錄path以及其所有子目錄如果這些目錄都是空的。該方法會逐層刪除每個目錄,直到遇到非空目錄為止,如果path是非空目錄或者其中有某個目錄非空則會拋出異常,因此在使用該方法前需要先進行目錄空性校驗。由於os.removedirs方法只會刪除空目錄,因此在使用該方法前需要先進行目錄空性校驗。
三、清理多個空目錄示例代碼
import os def remove_empty_dirs(path): '''刪除指定路徑及其所有子目錄下的空目錄''' if not os.path.isdir(path): return if len(os.listdir(path)) == 0: os.rmdir(path) return for sub_dir in os.listdir(path): sub_path = os.path.join(path, sub_dir) remove_empty_dirs(sub_path) # 檢查刪除後是否該目錄變為空目錄,為空則刪除 if len(os.listdir(path)) == 0: os.rmdir(path) if __name__ == '__main__': root_dir = 'E:/test' remove_empty_dirs(root_dir)
上述代碼中,函數remove_empty_dirs用於遞歸刪除指定路徑下以及其子目錄下的空目錄。首先判斷當前目錄是否為空,如果為空則刪除該目錄;否則遞歸進入子目錄繼續刪除空目錄。在遞歸返回時,需要再次檢查當前目錄是否為空,如果為空則刪除該目錄。在主函數中,指定要清理的根目錄即可。
四、總結
Python的os.removedirs方法可以方便地刪除指定目錄及其子目錄下的所有空目錄。使用該方法前需要進行目錄空性校驗,可以參考上述示例代碼實現目錄清理。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/286056.html