0
我正在尋找寫一段python代碼,刪除所有文件夾及其內容,但不刪除單個文件。
例如,下面是包含在目錄(文件夾B)中的一些文件和文件夾以及執行刪除的腳本文件。如何刪除folderA,folderB,folderC等,但保留文件?由於Python刪除所有文件夾,但不是文件
/Folder B
file.docx
fileB.docx
fileC.docx
pythonDeleteScript.py
folderA/
folderB/
folderC/
folderD/
你看過'shutil'和'os'模塊嗎?你可以使用後者來掃描一個目錄(並且過濾器只保留目錄條目),前者可以刪除文件夾樹。 SO並不是真正的代碼編寫服務,因爲你標記了這個'shutil',你清楚地知道這個模塊。看看'os' /'os.path'並嘗試解決你自己。 – ShadowRanger
[os.path.isdir](https://docs.python.org/3/library/os.path.html#os.path.isdir)+ [os.listdir](https://docs.python。 org/3/library/os.html#os.listdir)+ [os.rmdir](https://docs.python.org/3/library/os.html#os.rmdir) – Copperfield
@Copperfield:你會希望['shutil.rmtree'](https://docs.python.org/3/library/shutil.html#shutil.rmtree)只需在文件夾非空時執行此操作。如果你使用的是現代Python,可以簡化爲['os.scandir'](https://docs.python.org/3/library/os.html#os.scandir)(它涵蓋了' os.listdir'和'os.path.isdir',但更有效)+'shutil.rmtree'。 – ShadowRanger