python中exception类的_Python常见异常类型介绍

本文详细介绍了Python编程中的语法错误和运行时异常。语法错误,如缺失的冒号,会导致程序无法运行。运行时异常,如TypeError,是在代码执行过程中遇到的问题,例如尝试对整数进行迭代。Python的异常类层次结构中,SyntaxError和TypeError等都是Exception类的子类。了解这些异常对于编写健壮的Python代码至关重要。
摘要由CSDN通过智能技术生成

Python程序中最常见的错误为语法错误。语法错误又称为解析错误,它是指开发人员编写了不符合Python语法格式的代码所引起的错误。含有语法错误的程序会抛出异常,无法运行。如下所示为一段包含语法问题的代码:

while True

print("语法格式错误")

上述示例代码中的循环语句后少了冒号(:),不符合Python的语法格式。因此语法分析器会检测到错误。

在PyCharm中运行上述代码后,错误信息会在结果输出区进行显示,具体如下:

File " D:/Python项目/异常.py ", line 1

while True

^

SyntaxError: invalid syntax

以上错误信息中包含了错误所在的行号、错误类型和具体信息,错误信息中使用小箭头(^)指出语法错误的具体位置,方便开发人员快速地定位并修正。产生语法错误时引发的异常类型为SyntaxError。

一段语法格式正确的Python代码在运行时产生的错误称为异常。如果这些异常不被处理,程序默认的处理方式是直接崩溃。

程序运行时产生异常,示例如下:

for i in 3:

print(i)

运行代码,结果如下所示:

Traceback (most recent call last):

File "D:/Python项目/异常.py", line 7, in

for i in 3:

TypeError: 'int' object is not iterable

上述语句没有任何语法格式错误,但代码执行后出现TypeError异常,这是因为使用for循环对一个整数进行遍历,而for循环不支持对整数类型的遍历。

在Python中所有的异常均由类实现,所有的异常类又继承自BaseException类,程序运行时出现的异常大多继承自Exception类。如图1所示为Python中异常类的继承关系。

20201117181658625.jpg

图1 Python中异常类的继承关系

因为SyntaxError、FileNotFoundError、NameError等常见异常均继承自Exception类,所以本章主要对Exception类及其子类进行介绍,Exception中常见的子类及其描述如表1所示。

表1 Exception中常见的子类

类名

描述

SyntaxError

发生语法错误时引发

FileNotFoundError

未找到指定文件或目录时引发

NameError

找不到指定名称的变量时引发

ZeroDivisionError

除数为0时的异常

IndexError

当使用超出列表范围的索引时引发

KeyError

当使用映射不存在的键时引发

AttributeError

当尝试访问未知对象属性时引发

TypeError

当试图在使用a类型的场合使用b类型时引发

猜你喜欢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值