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方案!')

image-20230915200358226

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()
posted @   七落安歌  阅读(112)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
点击右上角即可分享
微信分享提示