作为
Python
初学者,在刚学习
Python
编程时,经常会看到一些报错信息,在前面我们没有提
及,这章节我们会专门介绍。
Python
有两种错误很容易辨认:语法错误和异常。
语法错误
Python
的语法错误或者称之为解析错,是初学者经常碰到的,如下实例
>>>
while
True
(
'
Hello world
'
)
File
"
"
,
line
1
,
in
?
while
True
p
rint
(
'
Hello world
'
)
^
SyntaxError
:
invalid
syntax
这个例子中,函数
print()
被检查到有错误,是它前面缺少了一个冒号(
:
)。
语法分析器指出了出错的一行,并且在最先找到的错误的位置标记了一个小小的箭头。
异常
即便
Python
程序的语法是正确的,在运行它的时候,也有可能发生错误。运行期检测到的错误
被称为异常。
大多数的异常都不会被程序处理,都以错误信息的形式展现在这里
:
>>>
10
*
(
1
/
0
)
Traceback
(
most
recent
call
last
)
:
File
"
"
,
line
1
,
in
?
ZeroDivisionError
:
division
by
zero
>>>
4
+
spam
*
3
Traceback
(
most
recent
c
all
last
)
:
File
"
"
,
line
1
,
in
?
NameError
:
name
'
spam
'
is
not
define
d
>>>
'
2
'
+
2
Traceback
(
most
recent
call
last
)
:
File
"
"
,
line
1
,
in
?
TypeError
:
Can
'
t convert
'
int
'
object to str implicitly
异常以不同的类型出现,这些类型都作为信息的一部分打印出来
:
例子中的类型有
ZeroDivisio
nError
,
NameError
和
TypeError
。
错误信息的前面部分显示了异常发生的上下文,并以调用栈的形式显示具体信息。