在 Python 中引发异常

pythonserver side programmingprogramming

您可以使用 raise 语句以多种方式引发异常。raise 语句的一般语法如下。

语法

raise [Exception [, args [, traceback]]]

此处,Exception 是异常的类型(例如,NameError),argument 是异常参数的值。参数是可选的;如果没有提供,则异常参数为 None。

最后一个参数 traceback 也是可选的(在实践中很少使用),如果存在,则是用于异常的回溯对象。

示例

异常可以是字符串、类或对象。 Python 核心引发的大多数异常都是类,其参数是类的一个实例。定义新的异常相当容易,可以按如下方式完成 −

def functionName( level ):
   if level < 1:
      raise "Invalid level!", level
      # 如果我们引发异常,则不会执行以下代码
      # 如果我们引发异常

注意 − 为了捕获异常,"except"子句必须引用引发的相同异常,无论是类对象还是简单字符串。例如,要捕获上述异常,我们必须按如下方式编写 except 子句 −

try:
   Business Logic here...
except "Invalid level!":
   Exception handling here...
else:
   Rest of the code here...

相关文章