1. 编程学习网 > 编程教程 > Python教程 > python异常处理概述

python异常处理概述

异常处理概述
截止目前,相信一步一步按照教程敲代码学习的朋友们,早已遇到各种各样的错误,也就是我们俗称的bug,也叫异常,比如NameError,SyntaxError等等。在编程学习中,没有人可以避免遇到bug,我们很大一部分时间是在解决各种各样的错误。但是,随着我们编程经验的积累,有时候,我们在写代码的过程中,完全会有能力去预判程序在运行过程中可能会发生的错误,这时,我们可以对这个错误进行处理,让程序在遇到这个错误时,不中断执行,这种解决问题的方式就称为异常处理。
 
 
异常处理可以有效的避免程序崩溃,让程序即使遇到异常也可以平稳运行直到结束,可以很好的保障程序的健壮性。

1.错误种类

python中的错误种类大类分为以下三种:语法错误、运行错误和逻辑错误。
 
其中语法错误是SyntaxError,这种错误很好理解,就是违背了python最基本的语法规则,比如少一个括号或冒号等,是最容易报语法错误的。比如:

错误提示:
  File "text.py", line 1
    for i in range(10)
                     ^
SyntaxError: invalid syntax
[Finished in 0.2s]
相信大家现在对这种错误的解决方法早已了然于胸,解决办法就是在错误提示的位置加上一个冒号即可。
 
这种错误是不能被异常处理解决的,因为它违背了最基本的规律,但是,这种错误确是最好解决的,因为随着我们经验的积累,对语法会越来越纯熟,解决语法错误也将不在话下。
 
而真正需要我们熟知的错误是python程序中语法正确的前提下,程序运行时检测到的错误,这才是异常处理真正需要处理的对象,也就是上面提到的运行错误。在我们编写代码中遇到最多的就是这种。而这样的异常种类是非常多的,如果能清楚的辨认出这些错误,对于我们的代码调试工作来说,作用是非常非常大的。所以这部分将在下一节做单独列举出来讲解。
 
 
 
逻辑错误是python程序执行过程中,虽然符合基本语法,但是违背了基本的逻辑思维,比如让一个字符串和一个数字相加,或是在输入时,对输入的内容错误处理等。

错误提示:
Traceback (most recent call last):
  File "text.py", line 3, in <module>
    c = a + b
TypeError: unsupported operand type(s) for +: 'int' and 'str'
 
逻辑错误是隐式的一种说法,其产生的原因往往是我们编写程序时对具体问题考虑欠缺所致,具体的错误类型可以其并入上面的运行错误,作为一个异常来处理。
 

2.异常的处理方式

异常是程序执行过程中发生的事件,它会影响了程序的正常执行。
 
我们知道在python中一切皆对象,但是很难相象,连异常竟然都是对象。
 
在对异常的处理中,一个基本的思想就是捕获,然后抛出,可以想象成一个渔夫捕鱼,渔夫在捕了一网袋鱼后,要把里面不好的,不能卖钱的抓出来,然后将它们扔出去,这和异常处理的思路基本是一致的。
 
除了普通的异常处理,Python中还有断言的方式可以用来处理异常。

本文由IT教学网整理发布,转载请注明出处:http://www.itjx.com/jiaocheng/Python/2020/0118/540.html

联系我们

在线咨询:点击这里给我发消息

咨询电话:400-998-2681

工作时间:7*24小时无休