zoukankan      html  css  js  c++  java
  • 面向对象--约束及异常处理,加密,日志

    异常处理(处理, 抛出异常, 自定义异常)
    1. 产生异常. raise 异常类(), 抛出异常
    2. 处理异常:
    try:
    xxxxx # 尝试执行的代码.
    except 异常类 as 变量: # 出现错误的时候. 捕获到异常
    xxxxxx # 处理异常
    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模块
    简单配置即可(basicConfig 单一日志文件 fileHandler 文件助手可以实现多文件操作)
    日志级别:
    CRITICAL 最高的
    ERRO 40
    WARN 30
    INFO 20
    DEBUG 10
  • 相关阅读:
    luogu P1877 [HAOI2012]音量调节
    luogu P1510 精卫填海
    luogu P1508 Likecloud-吃、吃、吃
    我的VIM
    luogu P1310 表达式的值
    luogu P1402 酒店之王
    luogu P3119 [USACO15JAN]草鉴定Grass Cownoisseur
    luogu P1879 [USACO06NOV]玉米田Corn Fields
    luogu P2746 [USACO5.3]校园网Network of Schools
    [BZOJ4870][六省联考2017]组合数问题(组合数动规)
  • 原文地址:https://www.cnblogs.com/qq1426794755/p/9724898.html
Copyright © 2011-2022 走看看