约束和异常处理 20

异常处理(处理,抛出异常,自定义异常)

  1. 产生异常, raise 异常类(), 抛出异常

  2.处理异常:

   try:

      xxxx # 尝试执行的代码

   except 异常类 as 变量 : 出现错误的时候,捕获到异常

      xxxx # 处理异常 

  3.自定义异常

    继承 Exception

  4. 堆栈信息

    import traceback

    traceback.format_exc() 获取堆栈信息

      

约束(难)

  约束是对子类进行的约束

  一 . 通过抛异常(简单)

    在父类中给出一个方法 这个方法中什么都不写 . 就抛异常 . NotImplementError()

    # 重写 子类对父类提供的方法不满意. 重新定义这个方法

    重写 子类重新定义父类中的方法.

    通过抛异常实现约束

  二 . 抽象类和抽象方法(Java,C#)

      接口 : 类中都是抽象方法 . 

    from abc import ABCMeta, abstractmethod

    抽象方法 : 抽象方法不用给出方法体 . 写个pass 就行了

    抽象类:

      语法 : 类(metaclass = ABCMeta)

      概念 : 如果类中包含了抽象方法 这个类一定是抽象类

      特点 : 抽象类一般不创建对象.

          抽象类中可以存在正常方法

      可以约束子类必须实现抽象方法

  MD5加密

    MD5加密: 不可逆

    引入模块  hashlib

       1 创建md5对象

       2 把加密信息交给md5对象

       3 获取密文

  日志处理(重要, 简单)

    引入 logging模块

    简单配置即可(basicConifg 单一日志文件  fileHandler 文件助手可实现多文件操作)

    日志级别:

      CRITICAL 最高级别

      ERRO 40

      WARN  30

      INFO  20

      DEBUG 10

日志处理

猜你喜欢

转载自www.cnblogs.com/f-g-f/p/9726862.html