python3异常与错误有什么不一样吗?
对于第一次接触到python这门编程语言的朋友来说,刚刚开始python编程的时候常常可以看到经常会看到一些报错信息,所以在这篇文章之中我们就来了解一下python错误与异常的相关知识,并且了解错误与异常的区别。废话不多说,我们开始进入正题吧。
Python有两种错误很容易辨认:语法错误和异常。
语法错误
Python 的语法错误或者称之为解析错,是初学者经常碰到的,如下实例:
>>>while True print('Hello world') File "<stdin>", line 1, in ? while True print('Hello world') ^SyntaxError: invalid syntax</stdin>
这个例子中,函数 print() 被检查到有错误,是因为它前面缺少了一个冒号(:)。
立即学习“Python免费学习笔记(深入)”;
语法分析器指出了出错的一行,并且在最先找到的错误的位置标记了一个小小的箭头。
异常
即便Python程序的语法是正确的,在运行它的时候,也有可能发生错误。运行期检测到的错误被称为异常。
大多数的异常都不会被程序处理,都以错误信息的形式展现在这里:
>>>10 * (1/0)Traceback (most recent call last): File "<stdin>", line 1, in ?ZeroDivisionError: division by zero>>> 4 + spam*3Traceback (most recent call last): File "<stdin>", line 1, in ?NameError: name 'spam' is not defined>>> '2' + 2Traceback (most recent call last): File "<stdin>", line 1, in ?TypeError: Can't convert 'int' object to str implicitly</stdin></stdin></stdin>
异常以不同的类型出现,这些类型都作为信息的一部分打印出来: 例子中的类型有 ZeroDivisionError,NameError 和 TypeError。
错误信息的前面部分显示了异常发生的上下文,并以调用栈的形式显示具体信息。