美文网首页
python 中的异常处理

python 中的异常处理

作者: Neverteaser | 来源:发表于2017-07-28 19:55 被阅读0次

何为异常

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

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学习(八)

    异常处理 Python中的异常类型总结: Python内置异常类的层次结构: 异常检测 try-except语句 ...

  • Python异常处理

    参考 Python菜鸟教程错误与异常 Python 异常处理 错误和异常 Python中(至少)有两种错误:语法错...

  • Python中的异常处理

    异常介绍 先来看一个最简单的异常,输出一个没有定义的变量: 那么上面就是出现异常的一个情况,NameError是异...

  • python的中异常处理

    Python 使用被称为 异常 的特殊对象来管理程序执行期间发生的错误。每当发生让 Python 不知所措的错误时...

  • python中的异常处理

    资料来源:http://www.cnblogs.com/linhaifeng/articles/6232220.h...

  • python 中的异常处理

    何为异常 在现实生活中,我们都或多或少遇到过一些不正常的时候,这个时候就可以称为人的“异常”了,人作为一个高等生物...

  • Python中的异常处理

    1.异常是什么? 1.1异常 就是不正常的情况,程序开发过程中错误和bug都是不正常的情况 1.2异常发生的后果 ...

  • Python中的异常处理

    什么是异常? 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行。一般情况下,在Python无法...

  • Python中的异常处理

    Python中的异常处理和Java中的类似,看下代码: 当程序存在多个 except block时,最多只有一个...

  • python中的异常处理

    本文所记述的是一些基础知识点中平时用的比较少的方法。 一、主动引发异常 使用raise语句主动引发异常,例如: 一...

网友评论

      本文标题:python 中的异常处理

      本文链接:https://www.haomeiwen.com/subject/dnsflxtx.html