【脚本】利用python的os模块删除某一个文件夹

参考链接

几个重要的函数:

  • os.remove(path) # path是文件的路径,如果这个路径是一个文件夹,则会抛出OSError的错误,这时需用用rmdir()来删除
  • os.rmdir(path) # path是文件夹路径,注意文件夹需要是空的才能被删除

判断是文件还是文件夹:

  • os.path.isfile(path):是否是文件
  • os.path.isdir(path):是否是文件夹

代码

实现思路:(这个代码会有缺陷,就是待删除的文件夹下不能包含子文件夹,否则会出错)

  1. 先判断待删除的文件夹中有无内容,有内容则循环调用os.remove删除文件
  2. 再调用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))

猜你喜欢

转载自blog.csdn.net/LWD19981223/article/details/127554882