赞
赏
在 Python 中,我们可以使用 raise 语句自己主动触发 异常,如果执行了 raise 语句,那么 raise 后面的语句将不能执行。
raise [Exception [, args [, traceback]]]
参数 | 描述 |
---|---|
Exception | 异常的类型中的任意一种。 |
args | 自已提供的异常参数。 |
traceback | 可选的(在实践中很少使用)。 |
其中 Exception 参数 是异常的类型中的任意一种,args 是自已提供的异常参数。最后一个参数 traceback 是可选的(在实践中很少使用),如果存在,则是跟踪异常对象。
使用 Python raise主动触发异常
if __name__ == '__main__':
print("嗨客网(www.haicoder.net)")
try:
num = int(input("Please input a number:"))
print("Your input is:", num)
if num < 10:
raise ValueError
print("try Done")
finally:
print("In Finally")
程序运行后,控制台输出如下:
我们在 try 字句里面,使用 if 语句 判断如果我们输入的 int 值 小于 10,那么我们使用 raise 主动触发一个 ValueError,我们看到触发了 ValueError 之后,raise 后面的语句不再继续被执行。
使用 Python raise主动触发异常
if __name__ == '__main__':
print("嗨客网(www.haicoder.net)")
try:
num = int(input("Please input a number:"))
print("Your input is:", num)
if num > 10:
raise ValueError("value too large")
except ValueError as e:
print("In ValueError exception, ", e)
finally:
print("In Finally")
程序运行后,控制台输出如下:
我们在 try 字句里面,使用 if 语句判断如果我们输入的 int 值大于 10,那么我们使用 raise 主动触发一个 ValueError,并且输入了具体的错误信息。
接着,我们在输入时,输入了 1024,我们看到触发了 ValueError,同时,我们在 except 字句中捕获到了 ValueError 异常,同时输出了错误信息。
在 Python 中,我们可以使用 raise 语句自己主动触发异常,如果执行了 raise 语句,那么 raise 后面的语句将不能执行。