参考链接
几个重要的函数:
os.remove(path)
# path是文件
的路径,如果这个路径是一个文件夹,则会抛出OSError的错误,这时需用用rmdir()来删除os.rmdir(path)
# path是文件夹
路径,注意文件夹需要是空的才能被删除
判断是文件还是文件夹:
os.path.isfile(path)
:是否是文件os.path.isdir(path)
:是否是文件夹
代码
实现思路:(这个代码会有缺陷,就是待删除的文件夹下不能包含子文件夹,否则会出错)
- 先判断待删除的文件夹中有无内容,有内容则循环调用
os.remove
删除文件 - 再调用
os.rmdir
删除该文件夹
removedir = 'labels/train/.ipynb_checkpoints'
filelist = os.listdir(removedir)
if len(filelist) != 0: # 开始删除所有文件
for file in filelist:
os.remove(os.path.join(removedir, file))
os.rmdir(removedir)
下面暂存一下我参考的那个链接里面的代码,似乎是可以遍历删除完包含子文件夹的某一个文件夹:
import os
os.removedirs(path) # 递归地删除目录。如果子目录成功被删除,则将会成功删除父目录,子目录没成功删除,将抛异常。
for root, dirs, files in os.walk(top, topdown=False):
for name in files:
os.remove(os.path.join(root, name))
for name in dirs:
os.rmdir(os.path.join(root, name))