#coding:utf-8
__author__ = "libingxian"
# 通过继承Exception或者BaseException类实现自定义异常类
class selfException(BaseException):
def __init__(self,mesg="raise a selfException"):
print mesg
#主动抛出异常,注意,当抛出异常后,如果不捕获处理,程序就会终止,不再往下执行
def raise_exception():
raise selfException("sorry,i am a selfexception")
# raise_exception()
# 主动捕获异常,当捕获成功,并且处理异常的过程不再抛出异常,程序则会正常执行
def catch_exception():
try:
res = 1/0
except ZeroDivisionError,e: # 必须要捕抓到对应的异常,才会进行处理
try:
raise_exception() # 这里会抛出一个异常,下面的语句不会执行
print "i will not run"
except selfException,e:
print e
finally:
print "i will run alawys"
print "hello"
catch_exception()
# 使用traceback模块可以获取更加详细的异常信息,后续再补充
Python 自定义异常类,主动捕获异常,主动抛出异常
最新推荐文章于 2025-04-09 22:39:30 发布