zoukankan      html  css  js  c++  java
  • 15、Python之异常处理

    异常处理

       1、 异常处理是所有语言都不可缺少的部分,我们在编写代码的时候,有时候会预期到某段代码可能会发生错误,如果错误发生了,我们通过异常捕获,来对发生异常的代码进行后续处理,比如有一段连接数据库的代码,这里有一个明显可能发生的异常就是,数据库连接失败,对于我们的程序而言,如果数据库连接失败了,后续的业务场景就没法继续了,因此我会抓住这个异常,然后来开始我们的planB操作。

        python中一个完整的异常结构为:

    try:
        print("可能发生异常的程序")
    except (IOError,IndexError) as e:
        print("发生异常后进行的操作")
    except:
        print("所有异常都没有抓住的情况下")
    else:
        print("没有发生异常继续执行")
    finally:
        print("不管异是否发生都需要执行,进行收尾工作")

    值得要注意的是finally,这里面的代码不管异常是否存在都会执行,其原因在于,有些程序不管异常是否发生都需要做一些收尾工作,比如数据库连接,如果异常发生了,后续代码不执行,那么数据库的连接就没有关闭。换句话说,finally的作用就是在异常发生之后,程序中断之前,让我们做一些收尾工作。

    2、写一个自己的异常

        只要继承Exception的类即可。

     1 '''我自己的异常'''
     2 class MyException(Exception,object):
     3     def __init__(self,name):
     4         self.name = name
     5     def sayHi(self):
     6         print("异常发生之后的处理")
     7 
     8 '''捕获我自己的异常'''
     9 try:
    10     raise MyException("我的异常")
    11 except MyException as e:
    12     e.sayHi()
    View Code
  • 相关阅读:
    SignalR客户端和服务端编写,winfrom端
    SQL 发送邮件msdb.dbo.sp_send_dbmail
    Stimulsoft打印内容横向,变成竖向,解决方法
    Chrome浏览器所有页面崩溃
    SQL存储过程直接传表
    c#SignalR一次发送最大数据量
    c#USB扫描枪,防止输入框手动输入
    SQLPrompt_9.5.5.9830破解版含注册机_永久激活不掉线
    SQL快捷键设置
    USB HDI 通信
  • 原文地址:https://www.cnblogs.com/win0211/p/8489350.html
Copyright © 2011-2022 走看看