自定义一个继承自Exception的类,在类中定义__str__(self)返回自定义的异常信息,然后便可以通过raise抛出这种自定义异常,捕获处理和普通的异常完全一样
class SelfException(Exception): def __init__(self,msg): self.msg = msg def __str__(self): return self.msg def throwException(): i = 0 if i == 0: raise SelfException("自定义错误") try: throwException() except SelfException as e: print(e)
通过assert(断言)可以简单地实现数据检验,不通过直接抛出异常的操作
#断言的作用是数据的校验,检验错误时会抛出AssertionError data = "12345" #类型是str,通过 assert type(data) is str print("%s is str" %data) #类型不是int,抛出异常 assert type(data) is int print("%s is int" %data)
原文:https://www.cnblogs.com/Hexdecimal/p/9364477.html