python程序出错怎么处理

图片[1]-python程序出错怎么处理-uusu优素-乐高,模型,3d打印,编程

在程序运行的过程中,如果发生了错误,可以事先约定返回一个错误代码,这样,就可以知道是否有错,以及出错的原因。在操作系统提供的调用中,返回错误码非常常见。比如打开文件的函数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
原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容