python try-except

相比于直接raise ValueError,使用try-except可以使程序在发生异常后仍然能够运行。

在try的部分中,当遇到第一个Error,就跳转到except中寻找对应类型的error,后续代码不再执行,如果try中有多个Error,注意顺序。以下程序可用于查看try-except的运行顺序。


z = 0
n = 1


def func(n, z):
    try:
        a = n / z
        if n == 1:
            raise ValueError("value error")
        # a = n / z
        
            
    except ZeroDivisionError as ze:
        print(f"here is {ze}")
        a = 2 #为了让程序有error的时候也能返回一个a, 当然也可以在外面先给a一个默认值。
        
    except ValueError as ve:
        print(f"here is {ve}")
        a = 2 #为了让程序有error的时候也能返回一个a, 当然也可以在外面先给a一个默认值。
        
    return a

res = func(n, z)

你可能感兴趣的:(python,开发语言)