假设我有一个名为 trial 的文件夹,其中包含以下内容: 文件夹 1、文件夹 2、文件夹 3、...文件夹 5 每个文件夹都有一个名为 FF-15
的子文件夹因此,路径是:
'/Users/brianadams/school/trial/Folder1/FF-15'
,或'/Users/brianadams/school/trial/Folder2/FF-15'
,等等。
我想删除文件夹 FF-15,如果它在所有文件夹中都是空的。
我试过以下方法:
import glob
import os
path = glob.glob('/Users/brianadams/school/trial/**/FF-15')
os.removedirs(path)
但它会抛出错误或最终不会删除文件。
你需要遍历每个文件目录才能工作。您不能一次将它们全部删除。稍微修改一下代码,这应该适合你。
import glob
import os
ff15_dirs = glob.glob('/Users/brianadams/school/trial/**/FF-15', recursive=True)
for ff15_dir in ff15_dirs:
if not os.listdir(ff15_dir):
os.rmdir(ff15_dir)
编辑:有效,我刚刚使用我使用您的约束创建的文件目录对其进行了测试。
除了上面提供的 Caleb Carlson 的回答之外,以下内容对我有用:
import glob
import os
import shutil
ff15_dirs = glob.glob('/Users/brianadams/school/trial/**/FF-15', recursive=True)
for ff15_dir in ff15_dirs:
shutil.rmtree(ff15_dir)