首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
SAAS
ToB门户
了解全球最新的ToB事件
论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
微博
Follow
记录
Doing
博客
Blog
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
排行榜
Ranklist
相册
Album
应用中心
qidao123.com ToB IT社区-企服评测·应用市场
»
论坛
›
软件与程序人生
›
后端开发
›
Java
›
【python基础】异常
返回列表
发新帖
【python基础】异常
[复制链接]
发表于 2023-6-26 10:25:38
|
显示全部楼层
|
阅读模式
Python使用被称为异常的特殊对象来管理程序执行期间发生的错误。每当发生执行错误时,Python都会创建一个异常对象。如果编写了处理该异常的
代码
,程序将继续执行;如果未对异常进行处理,程序将停止,并显示一个Trackback,其中包含有关异常的报告。
1.try-except
代码
块
异常是用try-except
代码
块处理的。try-except代码块让Python执行指定的操作。同时告诉Python发生异常时怎么办。使用了try-except代码块时,即便出现异常,程序也将继续执行:显示编写的友好错误信息,而不是显示一个Trackback.
众所周知,不能将一个数字除以0,但我们假设让Python这样做,会发生什么,编写程序如下所示:
我们发现在
终端
窗口出现了Trackback,并且没有对num的值进行输出。这就是我们前面说的,如果未对异常进行处理,程序将停止,并显示一个Trackback,提示该错误为ZeroDivisionError异常。
当我们认为可能会发生错误时,可编写一个try-except代码块来处理可能引发的异常。
其语法格式:
我们将上面的程序通过try-except代码块进行完善,编写程序如下所示:
我们这里用一条输出语句代替了异常处理过程,通过输出结果发现,通过try-except代码块,异常情况被处理,程序正常运行,输出了num的数值。
2.else代码块
通过将可能引发错误的代码放在try-except代码块中,可提高程序抵御错误的能力。而else代码块中包含的是try中可能引发错误的代码块被成功执行后应该如何操作的代码块
其语法格式:
我们编写个用input函数来进行输入,计算除法结果的程序,编写程序如下所示:
当我们正常输入时,10/2的结果是5.0在else代码块中正常输出,else代码块外result+1的计算结果6.0也被正常输出了。
当我们除数输入为0时,引发了ZeroDivisionError,经过异常处理,处理了这个错误,这时因为异常发生了,所以else代码块时不经过的,直接到了else代码块外,因为result的初始值为0,进行运算之后,结果为1。
本次程序举例中用到的是ZeroDivisionError异常,程序中可能发生的异常时多种多样的,我们需要知道在发生异常时的错误名称,把它通过try-except或者try-except-else代码块来处理即可。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
×
回复
使用道具
举报
返回列表
浏览过的版块
.Net
小小小幸运
+ 我要发帖
登录后关闭弹窗
登录参与点评抽奖 加入IT实名职场社区
去登录
微信订阅号
微信服务号
微信客服(加群)
H5
小程序
快速回复
返回顶部
返回列表