如何在Python中手动引发/引发异常?
我们使用适合我们特定问题的最具体的异常构造函数,而不是引发通用异常。为了捕获我们的特定异常,我们必须捕获将其子类化的所有其他更特定的异常。
我们应该提出特定的异常并处理相同的特定异常。
为了引发特定的异常,我们使用以下的凸起语句。
示例
import sys
try:
f = float('Nhooo')
print f
raise ValueError
except Exception as err:
print sys.exc_info()输出
我们得到以下输出
(<type 'exceptions.ValueError'>, ValueError('could not convert string to float: Nhooo',), <traceback object at 0x0000000002E33748>)即使使用类似以下示例的参数,我们也可能引发错误
示例
try:
raise ValueError('foo', 23)
except ValueError, e:
print e.args输出
我们得到以下输出
('foo', 23)