Python学习记录-异常处理函数的简单使用

有时一些程序即便语法合规,但在执行过程中也会出现错误,比如下面这个例子

def spam(divideBy):
    return 10/divideBy

print(spam(10))
print(spam(20))
print(spam(0))
print(spam(1))

执行结果为

Python学习记录-异常处理函数的简单使用_第1张图片

程序在执行到print(spam(0))时出现错误,因为除数不能为0,并且 后续的内容也未执行

设想如果一个程序比较大,我希望即便出现这种错误后,只需要告诉我有错误出现,但不希望影响后续内容的执行

这时候就可以用到 tryexcept的函数组合

比如上面的例子,我不确定 spam是否会出错,可以这样改

def spam(divideBy):
    try:
        return 10/divideBy
    except:
        print("Error: Invalid divideBy")


print(spam(10))
print(spam(20))
print(spam(0))
print(spam(1))

Python学习记录-异常处理函数的简单使用_第2张图片

只是在子函数中增加了 try、except,同样的调用方式,这次程序在执行过程中,虽然依旧出错,但并没有停下来,只是打印的ERROR信息,并继续执行后续内容

值得注意的是,如果如果try中的内容发生错误,会直接跳到except

def spam(divideBy):
    return 10/divideBy

try:
    print(spam(10))
    print(spam(20))
    print(spam(0))
    print(spam(1))
except:
    rint("Error: Invalid divideBy")

Python学习记录-异常处理函数的简单使用_第3张图片

print(spam(0))后面的内容并没有执行,而是直接跳到except


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