如何删除文件夹的内容但保留该文件夹?
问题描述:
我在这里看到了几个问题,但他们都似乎删除该文件夹以及。如何删除文件夹的内容但保留该文件夹?
如何只删除特定文件夹的内容,但保留文件夹本身。
优选地,用于两个条件:
- 内容
- 下的所有所有子文件夹递归删除。但保留主文件夹。
答
import os
def functToDeleteItems(fullPathToDir):
for itemsInDir in os.listdir(fullPathToDir):
if os.path.isdir(os.path.join(fullPathToDir, itemsInDir)):
functToDeleteItems(os.path.isdir(os.path.join(fullPathToDir, itemsInDir)))
else:
os.remove(os.path.join(fullPathToDir,itemsInDir))
这里发挥作用“functToDeleteItems”将采取一个说法,就是“fullPathToDir”,这将包含其内容您湾删除该文件夹的完整路径。它会递归调用它自己,如果发现任何文件夹,如果发现任何文件,然后删除它。
你可以找到大部分你在这个职位需要什么: http://stackoverflow.com/questions/3207219/how-to-list-all-files-of-a-directory os.walk()递归地读取文件夹。它还区分文件夹和文件。 – ma3oun
@maximusdooku,我希望我已经回答你所要求的! –