对于Python中异常(Exceptions)的理解

1.对于一个程序有异常中断时正常的,在Python中的异常有try....except语句,如下实例:

while True:
    try:
        x = int(input("Please enter a integer number"))
        break
    except ValueError:
    print("Oops, That was no valid number ,please tyr again!")

    

对于上面的try.....except语句,如果没有异常发生的,程序就会自动弹出。如果输入的不是整数,异常就会执行,并且try语句之后,程序会继续执行。还有若程序抛出的异常并不是其错误,就会抛出其它的异常。except(ValueError,TypeError,NameError等)

2.派生类与基类不兼容的异常,如下实例:

#实例1
class B(Exception:
    pass

class C(B):
    pass

class D(C):
    pass

for cls in [B, C, D]:
    try:
        raise cls()
    except D:
        print("D")
    except C:
        print("C")
    except B:
        print("B")
#输出结果
B
C
D
#如若改成for cls in [D, C, B]:
#输出结果
D
C
B




 

你可能感兴趣的:(Python学习)