Python的异常处理机制用的多吗?(用答卷实例通俗理解和深刻记忆:python异常处理五大机制)python教程 / python异常处理机制详解...

wufei123 发布于 2024-06-19 阅读(4)

用答卷实例通俗理解和深刻记忆:python异常处理五大机制什么是python的异常处理python的异常处理,简而言之就是当程序发生错误时,能够通过程序对错误进行捕捉,并处理,从而不会导致程序全盘崩溃!要怎么更好地理解呢?

python异常处理,就好像考试答题通常情况下,考试的卷子上从头到尾不可能只有一道题(就像python的项目不可能只有一个功能),然后,题目有容易的有难的,甚至是有错的(就像程序可能是简单的也可能是复杂的),再加上参加考试的人的知识储备不同(用户的操作习惯不同),都可能导致有些题目答错了,或不会答(程序因为种种原因发生异常),这种情况下,我们不可能就卡在那道不会答的题目那里,然后直接放弃掉后面的那些题目,绝大多数的人会跳过这道题,然后继续答下去。

python的异常捕捉处理程序也是如此,就是让程序暂时跳过发生异常的地方,然后继续执行下去,而不至于全盘崩溃python异常处理的基本机构try: passexcept Exception as

err: pass异常处理的机制如上异常处理的基本机构,python的程序由上往下执行,到了try这里,先执行try里面的代码块,如果没有发生异常,则跳过except里面的代码块,继续执行其他的;

如果在try里面的代码块当中发生了异常,那么在异常发生的下面的代码停止执行,并执行except里面的代码块,之后再继续往下执行其他的程序;异常捕捉需要匹配正确的异常类型(Exception),否则异常无法正确捕捉,这时,异常捕捉的任务会传达到上一级的try...except代码块去处理,以此类推,直到无法捕捉而抛出异常,程序继而终止;

多个异常捕捉排列在一起时,程序也是自上而下执行,当异常一旦被捕捉,其他的except将不会继续执行;Exception是通用的异常类型,可以捕捉任何一种异常,尤其方便之处,不过也尤其弊端,比如无法正确记录错误日志等。

python异常捕捉的最基本的机制实例defexamination(): print(参加考试了!) try: print(这道题很容易,一下子就做完了!) print(

这道题很难!) a = int(a12) print(跟这道题杠上了!) except ValueError as err: print(还是先跳过这道题吧,先把容易的有把握的分先拿下!

) print(果然,下面的题很简单,考试不仅考大家的知识,还考大家的应对能力!) examination() ———————————————————————— 代码输出: 参加考试了! 这道题很容易,一下子就做完了! 这道题很难! 还是先跳过这道题吧,先把容易的有把握的分先拿下! 果然,下面的题很简单,考试不仅考大家的知识,还考大家的应对能力!

代码解析如上代码,try里面的代码a = int(a12)中,int()函数转换非数值型数据会发生异常,因为使用了异常处理的结构,所以,当代码执行到这里时,异常被except ValueEroor捕捉,然后执行except里面的代码,之后再执行程序中其他的代码;

ValueError是专门用来捕捉值异常的,如果使用了其他的异常类型将无法正确捕捉(除了Exception通用异常),那会怎么样呢?异常处理还有顺序机制、嵌套传递机制等等丰富实例,可查阅下面的内容:python异常处理,及异常处理的五大机制 - 大器编程

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

河南中青旅行社综合资讯 奇遇综合资讯 盛世蓟州综合资讯 综合资讯 游戏百科综合资讯 新闻50343