Che*_*hie 4 python shutil windows-7 delete-file
我正在用 Python 编写代码,在其中检查某个文件夹是否存在;如果是,我将其删除并创建一个新的(同名)。代码如下:
if os.path.exists(output_folder):
shutil.rmtree(output_folder)
os.makedirs(output_folder)
Run Code Online (Sandbox Code Playgroud)
这段代码工作正常,当我output_folder用windows explorer. 当它打开时,我的代码中出现以下错误:
WindowsError: [Error 5] Access is denied: [foldername]
Run Code Online (Sandbox Code Playgroud)
同时,windows explorer将自身切换到foldername的父目录,并抛出错误。
有没有办法让python忽略错误并继续运行,或者我要求的东西由于系统而无法实现?
我尝试使用shutil.rmtree(output_folder, ignore_errors=True)但它没有改变任何东西。
您可以使用 Python 的异常处理来捕获错误。在再次创建文件夹以让 Windows 资源管理器有机会关闭之前,您也可能会受益于短暂的延迟:
import shutil
import time
try:
shutil.rmtree(output_folder)
except WindowsError as e:
print("Failed to delete") # Or just pass
time.sleep(0.5)
os.makedirs(output_folder)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
938 次 |
| 最近记录: |