如何使用python删除文件夹中的所有文件夹?

如何使用python删除文件夹中的所有文件夹?,python,Python,是否可以在不使用特定路径的情况下删除文件夹中的所有文件夹?在这里,我移动文件的内容,然后,如果是目录,我想删除 import os, zipfile import shutil import os from os import path dir_name = 'C:\\Users\\Guest\\Desktop\\OJT\\samples' destination = 'C:\\Users\\Guest\\Desktop\\OJT\\scanner\\test' for path, subd

是否可以在不使用特定路径的情况下删除文件夹中的所有文件夹?在这里,我移动文件的内容,然后,如果是目录,我想删除

import os, zipfile
import shutil
import os
from os import path


dir_name = 'C:\\Users\\Guest\\Desktop\\OJT\\samples'
destination = 'C:\\Users\\Guest\\Desktop\\OJT\\scanner\\test'
for path, subdirs, files in os.walk(destination):
    for name in files:
        filename = os.path.join(path, name)
        shutil.copy2(filename, destination)

是的,使用shutil的
rmtree
方法

import shutil 
shutil.rmtree('directory') # the directory you want to remove
os.listdir()
您也可以使用
os.rmdir
,但如果其中有任何内容,则无法使用

如果要检查该特定路径是否为目录,则可以使用
os.path.isdir
然后运行
rmtree
,如果返回
TRUE

如果您想保持根文件夹的完整性,则可以
遍历该目录,并对每个项目调用
rmtree

如前所述,如果您想删除目录中的所有子目录,只需使用循环遍历每个文件,如果文件是目录,则应用:


上面的代码还用于检查文件是否为目录

如果
Vineth的
答案不适合您的情况,您可以使用
子流程
模块运行
os
特定命令,如下所示

import subprocess
subprocess.call('rm -rf /path/of/the/dirctory/*', shell=True)
上面的命令是特定于linux的,您可以使用上面相同命令的windows对应命令

注意-此处
shell=True
将扩展到文件/文件夹中

另外,请注意
Vineth的回答是
os
独立的,上面的回答是
os
特定的小心点


另外,您还可以使用
子流程
模块运行
powershell
命令。

我的意思是,如何删除文件夹中的所有文件夹,因为.rmtree也会删除根文件夹。您可以进入目录,然后循环浏览其内容,并在所有目录上运行
rmtree
import subprocess
subprocess.call('rm -rf /path/of/the/dirctory/*', shell=True)