然后在 python 中使用 try catch 可以捕获错误并将它们分配给带有as
关键字的变量
try
do something..
except IOError as e:
do something with e..
然而,然后在不知道错误类型的情况下尝试做同样的事情 python 抱怨语法。
try
do something..
except as e:
do something with e..
有什么方法可以捕获默认错误并将其分配给变量?
就在这里。所有异常都派生自Exception
该类。
所以你可以这样做:
try:
doSomething()
except Exception as e:
doSomethingWithException(e)
这是一种包罗万象的线。
您也可以使用 sys.exc_info()。这允许您使用相同的代码处理 Python 2.x 和 Python 3.x 上的异常。
常规方式是:
try:
do_whatever()
except Exception as e:
handle_it()
尽管捕获如此广泛的异常是不明智的 - 最好捕获您知道可以处理的特定异常并让其他任何东西传播。
值得注意的是,KeyboardInterrupt 和 SystemExit 继承自 BaseException 而不是 Exception,因此如果您希望满足这些要求,这些将不会被捕获,但这不应该成为问题,因为无论如何它们都应该在顶层处理。