python 中的异常处理

何为异常

在现实生活中,我们都或多或少遇到过一些不正常的时候,这个时候就可以称为人的“异常”了,人作为一个高等生物,也会有“异常”的时候。一个程序在运行的过程中难免也会出现异常,这种异常会导致程序功能的不正常,甚至导致程序崩溃,所以在程序开发中,也要考虑到异常的情况,由此展开到程序的异常处理

python 异常处理的方式

在python中异常处理方式分为两中:

try - except(捕获式)
assertions(断言式)

在程序开发中,我们通常使用捕获式来解决程序异常

捕获式处理异常语法

try:
  可能出现异常的代码
except(异常名称):
  一单出现异常执行的代码
else:
  没有异常时执行的代码
finally:
  不论是否异常都执行的代码

如何用捕获式处理多个异常

try:
     可能出现异常的代码
except (Excp1 [, Excp2, Excp3, Excp4…Excpn]):
     上述任一异常出现之后要执行的代码



try:
     可能出现异常的代码
except Excp1:
     出现Excp1异常之后执行的代码
except Excp2:
     出现Excp1异常之后执行的代码

自定义异常

一门编程语言提供的信息错误有限,而且晦涩难懂,所有就引入了自定义异常

1.异常— 一种对象
自定义异常 – 一种自定义类型
自定义类型[异常] – 参考标准异常(继承Exception)—自定义异常(继承Exception)

2.主动抛出异常
在开发的过程中,主动出现一种错误,将错误抛出给程序告诉程序出错了。
通过raise关键字,抛出一个异常

3.自定义异常,就是为了专门抛出错误的,抛出错误,就是严重警告这里出现了什么问题

首先-代码执行过程中,出现了异常【系统标准异常】【信息不是很明白】
捕获系统异常,创建一个自定义异常
抛出自定义异常【自定义异常】【信息明确的错误】

自定义异常的目的:

转换异常信息,将不明确的异常信息转换成更加精确的异常信息
转换异常信息:异常的传递~传递更加明确的异常,给后面的代码进行处理!

finally

finally 语法作为程序是否异常都执行的语句,在程序中一般作为资源回收使用

try:
    f = open("d:/test.txt", "w")
    f.write(["a", "b"])
except FileNotFoundError as e:
    print("文件操作失败")
finally:
    f.close()

在这里程序执行是够正常都要进行关闭文件的动作,我们就可以使用finall语句进行内存回收

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 什么是异常? 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。一般情况下,在Python无法...
    云Shen不知处阅读 425评论 0 0
  • 1.异常是什么? 1.1异常 就是不正常的情况,程序开发过程中错误和bug都是不正常的情况 1.2异常发生的后果 ...
    已重复的昵称阅读 372评论 0 0
  • 高效的执行力,我觉得我是具备的,自从参加工作都是扮演的执行角色,也就是被支配的角儿,领导指哪儿打哪儿,一起工作的同...
    我们Teacher阅读 3,731评论 0 2
  • 或许是因为每个人都是不同的,所以脑袋的想法做法也是不同的吧 特多会有那么几个相似的吧! 为什么嘴里说的头头是道,什...
    自命题阅读 235评论 0 1
  • (原创) 年少雄心气,如今志未酬。 人生难百岁,虚度四三秋。 疏云犁月碎,冰剑斩花柔。 英气年轮磨,何谈干斗牛。 ...
    淘金石阅读 179评论 2 9