python 基础 6.2 raise 关键字使用

本文介绍了 Python 中 raise 关键字的用法,包括触发异常的基本语法和示例。通过两个示例展示了如何使用 raise 抛出异常,并解释了异常处理流程及 finally 子句的执行情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一. raise 关键字
   raise 用来触发异常
   语法如下:
    raise[Exception [,args [,traceback]]]
    语句中Exception 是异常的类型(例如:NameError)参数是一个异常参数值。改参数是可选的。如果不提供,异常的参数是“None”。最后一个参数是可选的(在实践中很少使用),如果存在,是跟踪异常对象。
 
1》示例  #raise 抛出异常,print 是打印出来
try:
    a = 10
    b = 0
    print a/b
except Exception as e:
    print e
    raise e
else:
    print 'ok'
finally:
    print 'End'
 
>>>
integer division or modulo by zero       // print 打印异常
End
Traceback (most recent call last):
  File "F:/Գ��python�ű�/�쳣/raise �ؼ���.py", line 13, in <module>
    raise e
ZeroDivisionError: integer division or modulo by zero    //raise 抛出异常,程序终止了
 
 
2》 raise 抛出异常后,还会执行finall,无论这个程序时对的还是错误的,在逻辑上最后都会执行finally。然后 raise 抛出异常后,程序就会终止,不会再打印最后的 print ‘这是一个异常’
try:
    a = 10
    b = 0
    print a/b
except Exception as e:
    print e
    raise e            //抛出异常程序终止
else:
    print 'ok'
finally:
    print 'End'
print '这是一个异常'    //不会再执行此处
 
>>>
integer division or modulo by zero
Traceback (most recent call last):
End
  File "F:/Գ��python�ű�/�쳣/raise �ؼ���.py", line 13, in <module>
   raise e
ZeroDivisionError: integer division or modulo by zero
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

转载于:https://www.cnblogs.com/lzcys8868/p/7802274.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值