#導入系統模式函數
import syscode
#定義獲取信息的函數()文件名,所在函數名,當前行數orm
def get_head_info():對象
try:繼承
raise Exceptionget
except:it
f = sys.exc_info()[2].tb_frame.f_backio
return (f.f_code.co_filename,f.f_code.co_name,str(f.f_lineno))class
#不能爲負數的異常類型import
class FuShuError(RuntimeError):#自定義異常類須要繼承運行時異常類 能夠直接或者間接繼承 Exception類便可
#添加初始化魔術方法
def __init__(self,errormsg = '',errorno='',errorline='',errorfile=''):
#將錯誤信息存入對象
self.msg =errormsg#錯誤信息
self.no =errorno #錯誤編號
self.line = errorline#錯誤行數
self.file = errorfilr#錯誤文件
try:
#設置年齡
age = -11
#檢測年齡是否合格
if age < 0
raise FuShuError('值爲負數!‘,220,get_head_info()[2],__file__)
#接受非負數的異常
except FuShuError as e:
print('年齡爲負數屬於非法數值‘’)
age =age * -1
except NameError:
print(‘變量書寫異常‘)
print(age)’