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

重新运行代码替换文件夹触发PermissionError的原因及解决方法

解决删除文件夹时的PermissionError问题

你遇到的PermissionError主要有两个核心原因:一是os.remove()仅支持删除单个文件,无法删除文件夹(哪怕是空文件夹,更别说包含PDF的非空文件夹);二是目标文件夹可能正被其他进程占用(比如打开了里面的PDF文件、资源管理器停留在该目录下)。

下面是针对性的解决方法:

1. 替换删除方法为shutil.rmtree()

shutil.rmtree()是Python标准库中专门用于删除文件夹(包括其下所有文件和子文件夹)的方法,直接替换原来的os.remove()即可:

import os
import shutil

newpath = rf'C:\Users\{username}\Desktop\Output Folder(MC)-{jobnumber}'
if os.path.exists(newpath):
    try:
        shutil.rmtree(newpath)
    except PermissionError:
        print("权限拒绝:文件夹可能被其他进程占用,请关闭相关文件/窗口后重试")
    os.makedirs(newpath)
else:
    os.makedirs(newpath)

2. 排查并解除文件夹占用

  • 检查是否打开了该文件夹内的PDF文件,或者有没有其他程序正在读写该文件夹的内容,关闭后再运行脚本
  • 确认资源管理器是否停留在目标文件夹目录下,切换到其他目录后重试

3. 以管理员权限运行脚本

如果以上操作仍无法解决,右键点击你的Python脚本,选择「以管理员身份运行」,确保脚本拥有足够权限操作桌面目录下的文件夹

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 14:15:02