自定义错误类型和处理

#导入系统模式函数

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)’

相关文章
相关标签/搜索