Python程序设计基础:异常

一、异常的类型

在使用Python进行程序编写时,很容易就遇到程序出错的情况,可能是引用了未定义的变量,也可能是访问了字典中不存在的键,还可能是读文件时,只读模式下读取了不存在的文件,这些错误都会导致程序终止运行并输出错误信息,而这些错误均被称作为异常。
在Python中,不同的异常被定义为不同的对象,对应不同的错误,常见的异常如下:

异常名称描述
Exception常规异常的基类
ZeroDivisionError除数为零
IOError输入\输出操作失败
IndexError序列中没有此索引(index)
KeyError映射中没有这个键
NameError未声明/初始化对象(没有属性)
IndentationError缩进错误
ValueError传递的值出现错误
KeyError请求一个不存在的字典关键字引发的错误
ImportErrorImport无法找到模块
AttributeError试图访问未知的对象属性引发的错误
TypeError类型不符合要求引发的错误
MemoryError内存不足引发的错误
SyntaxErrorPython代码非法,语法错误

当出现异常时,程序会终止运行,无法实现原有功能,若想保证原有功能实现,则需要在异常发生时及时捕获并作出处理。

二、异常的处理过程

Python中提供了try语句来进行异常的捕获与处理,其语法格式如下:

try:
    语句
except 异常名称:
    捕获异常时处理语句
else:
    未发生异常时语句

在上述内容中,当执行try下面的语句时,若出现指定的异常,则执行except子句部分进行异常处理,若未发生异常,则执行else子句部分。
要注意的是,异常处理并不能消除异常本身,而是当异常发生时,让程序按照预设的方式运行下去,避免因为异常被意外终止,不过不确定会发生的异常是什么,可以使用通用的异常名称Exception来捕获。

例如:编写一个允许连续做4次除法,并能够捕捉到输入出错时可能出现的异常的程序。
在这里插入图片描述
在这里插入图片描述
程序中,用变量i控制循环的进行,总共循环四次,主要捕获的异常为分母为0以及输入的分母不为数值类型。

例如:读取文件2.txt内容,用读模式打开,若文件不存在系统会报错。
当该文件不存在时,结果如下:
在这里插入图片描述

当该文件存在时,结果如下:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

七层楼的疯子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值