python遇到错误跳过_Python错误处理和异常处理

在前面介绍Python语法的过程中,我们已经接触到了解释器给的错误和异常,但并没有详细讲解它们。现在我们就全面的来学习Python是对语法错误等错误进行定义和处理的,这包括至少有两种可以区分的错误,它们是语法错误和异常。

语法错误

Python的语法错误就是不符合Python语法的错误,又称为解析错误。这种错误是初学Python对语法不是很熟悉时经常犯的。比如下面的例子:

In [1]: if 2 == 3 print('imposible')

File "", line 1

if 2 == 3 print('imposible')

^

SyntaxError: invalid syntax

解释器在解释上面的代码时,就会发现表达式2 == 3后面少了一个冒号:,这时它就会报出一个错误SyntaxError: invalid syntax,并且输出出现语法错误的那一行,并显示一个“箭头”,指向这行里面检测到第一个错误。 错误是由箭头指示的位置上面的 token 引起的(或者至少是在这里被检测出的)。文件名和行号也会被输出,以便输入来自脚本文件时你能知道去哪检查。

解释器这样报出的好处是:

(1)告诉我们哪一行代码出错了;

(2)错误的类型是什么。

这样非常有利于我们排除错误,修正程序。

异常(Exception)

如果我们对语法很熟悉,写出来的代码在语法上都是正确的,但也不能保证在执行时程序不会引发错误。在执行时检测到的错误被称为异常,异常不一定会导致严重后果,但我们不在代码中对它们进行处理,就可能会导致程序中断执行。下面是一些常见的错误异常信息:

In [2]: 5 / 0

----------------------------

ZeroDivisionError Traceback (most recent call last)

in

----> 1 5 / 0

ZeroDivisionError: division by zero

In [3]: a + 3

------------------------------

NameError Traceback (most recent call

你可能感兴趣的:(python遇到错误跳过)