# ### 主动抛出异常 raise 所有异常类的父类(基类,超类) BaseException ; 所有普通异常类的父类(基类,超类) Exception
try:
raise BaseException
except BaseException:
pass
"""raise 后面如果什么也不写 , 默认抛出的是BaseException"""
# (1) 基本用法
try:
raise BaseException
except BaseException:
pass
# (2) 自定义异常类
# 只能在异常的情况下,才能获取到相应的数据
def return_errorinfo(n):
import sys
f = sys.exc_info()[2].tb_frame.f_back
if n==1:
return str(f.f_lineno) #返回当前行数
elif n == 2:
return f.f_code.co_filename #返回文件名
# get_info 通过抛出异常触发return_errorinfo函数,从而获取异常的行号和文件
def get_info(n):
try:
raise
except:
return return_errorinfo(n)