我用try…except块在Python中捕捉异常。程序尝试使用操作系统makedirs. 如果它引发WindowsError:directory already exists,我想捕捉异常而不做任何操作。如果抛出任何其他异常,我捕捉它并设置一个自定义错误变量,然后继续执行脚本。 理论上可行的是:
try:
os.makedirs(path)
except WindowsError: print "Folder already exists, moving on."
except Exception as e:
print e
error = 1
现在我想稍微加强一下,确保windowsrerror的except块只处理那些错误消息包含“directory already exists”的异常,而不处理其他异常。如果有其他窗口错误,我想在下一个except语句中处理它。但不幸的是,以下代码不起作用,也无法捕获异常:
^{pr2}$如何实现第一个except语句专门捕获“directory already exists”异常,并在第二个except语句中处理所有其他异常?在
使用一个异常块和特殊情况下的处理;您只需使用
isinstance()
来检测特定的异常类型:请注意,这里我不依赖于异常的容器性质;我将显式测试
^{pr2}$args
属性:相关问题 更多 >
编程相关推荐