首页 / 知识

python程序出错怎么处理

2023-11-12 13:07:00

python在程序运行的过程中,如果发生了错误,可以事先约定返回一个错误代码,这样,就可以知道是否有错,以及出错的原因。在操作系统提供的调用中,返回错误码非常常见。比如打开文件的函数open(),成功时返回文件描述符(就是一个整数),出错时返回-1。

用错误码来表示是否出错十分不便,因为函数本身应该返回的正常结果和错误码混在一起,造成调用者必须用大量的代码来判断是否出错:

deffoo():

r=some_function()

ifr==(-1):

return(-1)

#dosomething

returnr

defbar():

r=foo()

ifr==(-1):

print('Error')

else:

pass

一旦出错,还要一级一级上报,直到某个函数可以处理该错误(比如,给用户输出一个错误信息)。

所以高级语言通常都内置了一套try...except...finally...的错误处理机制,Python也不例外。

try

让我们用一个例子来看看try的机制:

try:

print('try...')

r=10/0

print('result:',r)

exceptZeroDivisionErrorase:

print('except:',e)

finally:

print('finally...')

print('END')

当我们认为某些代码可能会出错时,就可以用try来运行这段代码,如果执行出错,则后续代码不会继续执行,而是直接跳转至错误处理代码,即except语句块,执行完except后,如果有finally语句块,则执行finally语句块,至此,执行完毕。

上面的代码在计算10/0时会产生一个除法运算错误:

try...

except:divisionbyzero

finally...

END

从输出可以看到,当错误发生时,后续语句print('result:',r)不会被执行,except由于捕获到ZeroDivisionError,因此被执行。最后,finally语句被执行。然后,程序继续按照流程往下走。

以上内容为大家介绍了python培训之程序出错怎么处理,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注我们

培训流程代码程序语句

最新内容

相关内容

热门文章

推荐文章

标签云

猜你喜欢