https://www.jb51.net/article/164084.htm
#本模块的基类 class CalcErorr(Exception): """本模块异常类的基类""" pass #非整数引发异常 class NumErorr(CalcErorr): """输入的非整数数据将引发此异常""" def __init__(self,numA,numB): """用户输入的数据""" self.numA=numA self.numB=numB def __str__(self): """返回异常的描述""" return f"本计算器只接收整数!" def calculator(a,b): """两数相加""" try: if type(a)!=int or type(b)!=int: raise NumErorr(a,b) #抛出异常类对象,传入初始化数据; except Exception as e: #捕获异常,返回描述信息 print(e) else: c=a+b return c #用户调用(正确数据) sA=calculator(33,66) print(sA)
输出结果:
>>> calculator(22,11)
33
>>>
用户调用错误数据:
sA=calculator(33.0,66.0) print(sA) #结果: >>> calculator(33.0,66.0) 本计算器只接收整数! >>>