zoukankan      html  css  js  c++  java
  • python『学习之路-Base_Last』异常

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    # @Time : 2017/11/22 22:18
    # @Author : mixiu26

    names = ["yaya","yiyi"]
    data = {}

    try:
    # data['name'] # 表示尝试处理这段代码,如果处理失败,则运行下一部分:
    names[3]
    open("tes.txt")
    a = 1
    print(a)
    except KeyError as e:
    print("尝试执行代码失败,",e) # 尝试处理代码失败,捕捉失败原因: 尝试执行代码失败, 'name'
    except IndexError as e:
    print("索引越界异常: ",e) # 尝试执行try中两部分代码,如果谁中有异常,就打印谁中的信息:
    except Exception as e:
    print("捕捉所有未知错误 >>>:") # Exception ---- >> 一般建议放在最后,捕捉所有未知错误
    else:
    print("一切正常 >>>: ") # ---- >> 没有任何错误时执行它

    finally:
    print("不管程序正常与否, 都正常执行: ") # 不管程序正常与否, 都正常执行:



    # 统一处理异常信息:
    # try:
    # names[3]
    # data['name']
    # open("tes.txt")
    # except Exception as e: # ---- >> 一般不用
    # print("程序出错: ",e) # 程序出错: list index out of range ---- >>此种处理异常的方式就是无法判断到底是哪里出的错

    # 自定义异常:
    class QuanqException(Exception): # ---- >>继承自基类exception
    def __init__(self,message):
    self.message = message # 初始化错误信息 --- >>促发异常时,将异常信息传入这里,然后有return进行数据返回

    # def __str__(self):
    # return self.message # 返回字符串格式的错误信息,这里可以改变返回的错误信息

    try:
    raise QuanqException('自定义异常') # 促发自定义异常: 实例化时将其传给message
    except QuanqException as e:
    print(e)

  • 相关阅读:
    C语言博客作业01分支、顺序结构
    vue学习日记04
    vue学习日记01
    vue学习日记05
    vue学习日记02
    企业微信小程序注册遇到的一些事
    vue学习日记03
    Unix/Linux系统编程第十三章学习笔记
    OpenEuler 中C与汇编的混合编程(选做)
    《Unix/Linux系统编程》第五章学习笔记
  • 原文地址:https://www.cnblogs.com/mixiu26/p/7881862.html
Copyright © 2011-2022 走看看