python:(try...except...else...finally)异常处理
python的异常处理
1、什么是异常
当检测到一个错误时,解释器无法继续执行了,反而出现一些错误的提示,这就是所谓的异常。
特别强调:异常并不是错误,有所不同的。异常往往是由于输入信息异常或未知的结果导致程序无法执行。
`
2、异常演示
# 除数为0 异常
print(10 / 0)
# 文件读取异常 (当前目录下没有该文件)
file = open('python.txt', 'r')
- 语法没有出现错误
3、异常捕获
基本语法:
try:
可能发生错误的代码
except:
如果出现异常执行的代码
try ...except主要用于捕获代码运行时异常,如果异常发生,则执行except中的代码
案例演示:
try:
file = open('python.txt', 'r')
content = file.readlines()
print(content)
except:
file = open('python.txt', 'w', encoding='utf-8')
file.write('以只读模式打开文件出现异常,可能没有该文件,已经执行except语句!')
file.close()
- 提高程序的健壮性
4、捕获异常并输出错误信息
在实际工作中,不仅需要对异常进行捕获,还需要把异常信息写入到日志文件中(具体是什么错误找到)
try:
print(10/0)
except Exception as e:
print(f'--日志:{e} --') # 代表出错的异常信息 => 实际工作以后,写入日志文件中
print('捕获异常的同时,执行except方案!')
5、try...except...else语句
try:
可能出现异常的代码
except:
如果出现异常执行的代码
else:
当try中语句出现异常,则执行try中的代码,反之不执行
try:
file = open('python.txt', 'r', encoding='utf-8')
except:
file = open('python.txt', 'w', encoding='utf-8')
else:
content = file.read()
print(content)
6、异常捕获中的finally语句
finally表示的是无论是否异常都要执行的语句,例如关闭文件。
完整的异常捕获语句:
try:
可能会出现异常的代码
except Exception as e:
出现异常执行的代码块
else:
如果try中的语句没有出现异常,就执行else中的语句,反之不执行
finally:
适合做一些一些收尾工作,不管代码是否出现异常都会执行的代码 如 关闭文件
try:
file = open('python.txt', 'r', encoding='utf-8')
except:
file = open('python.txt', 'w', encoding='utf-8')
else:
content = file.read()
print(content)
finally:
f.close()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!