You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何批量删除指定路径下的同名空子文件夹FF-15?

解决空FF-15文件夹删除问题

你的代码存在几个关键问题,导致报错和删除失效:

  • glob.glob() 返回的是路径列表,但 os.removedirs() 只能接收单个路径,直接传列表必然报错。
  • os.removedirs() 会递归删除所有空的父目录(比如删完FF-15后,如果上层的Folder1也为空,会连Folder1一起删掉),这大概率不是你想要的操作。
  • 没有判断FF-15文件夹是否为空,直接执行删除可能误删包含内容的文件夹。

下面是修正后的代码,仅删除空的FF-15文件夹:

import glob
import os

# 递归匹配所有FF-15路径,必须加recursive=True,否则**通配符不生效
ff15_paths = glob.glob('/Users/brianadams/school/trial/**/FF-15', recursive=True)

for path in ff15_paths:
    # 判断文件夹是否为空:os.listdir返回文件夹内的所有内容,空文件夹返回空列表
    if not os.listdir(path):
        # os.rmdir仅删除空文件夹,不会递归删除上层目录
        os.rmdir(path)
        print(f"已删除空文件夹: {path}")

如果你的Python版本低于3.5(glob.glob的recursive参数不支持),可以改用os.walk遍历:

import os

root_dir = '/Users/brianadams/school/trial'
for root, dirs, files in os.walk(root_dir):
    if 'FF-15' in dirs:
        ff15_path = os.path.join(root, 'FF-15')
        if not os.listdir(ff15_path):
            os.rmdir(ff15_path)
            print(f"已删除空文件夹: {ff15_path}")

内容的提问来源于stack exchange,提问作者JodeCharger100

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 12:02:42