约束 约束 , 约束其派生类:  保证派生类中必须编写send方法 , 不然执行可能就会报错 Python中  语法: class BaseMessage(object): def send(self): """" 必须继承BaseMessage,然后其中必须编写send方法, 用于完成具体业务 """ raise NotImplementedError(".send()必须被重新写") # raise Except…
一.什么是约束? 在生活中的约束大概就是有什么原因,导致你不能做这件事情了,称之为约束.而在python中的约束是在当多个类中,都需要使用某些方法时,需要人为抛出异常或使用基类+异常处理来进行约束 class BaseMessage: def send(self): raise NotImplementedError("send必须被重写") # 约束潜规则, 子类必须有send方法 否则主动抛异常 class Msg(BaseMessage): def send(self): pri…
小学生绞尽脑汁也学不会的python(异常,约束,MD5加密,日志处理) 异常处理(处理) 1.产生异常.raise 异常类(),抛出异常2. 处理异常: try: xxxxx # 尝试执行的代码. except 异常类 as 变量: # 出现错误的时候. 捕获到异常 xxxxxx # 处理异常ch try: """操作""" except Exception as e: """保护的父类,可以捕获所有异常"…
摘要:hashlib ***** logging ***** configparser * 一.hashlib模块 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长度固定的数据串(通常用16进制的字符串表示). 摘要算法就是通过摘要函数f()对任意长度的数据data计算出固定长度的摘要digest,目的是为了发现原始数据是否被人篡改过. 特点: 这个算法是不可逆,就是说经过这个算法处理后的保存…
目录 hashlib和hmac模块: hashlib模块: -hash: 特点: 大致流程: 注意: hmac模块: 特点: 注意:hmac模块只接受二进制数据的加密 hashlib和hmac模块: --数据加密处理 hashlib模块: -hash: ----hash是一种算法(Python3.版本里使用hashlib模块代替了md5模块和sha模块,主要提供 SHA1.SHA224.SHA256.SHA384.SHA512.MD5 算法),该算法接受传入的内容,经过运算得到一串hash值 特…
一.约束 建议使用: class BaseMessage(object): def send(self): """ 必须继承BaseMessage,然后其中必须编写send方法.用于完成具体业务逻辑. """ raise NotImplementedError(".send() 必须被重写.") 主动抛异常,意味着子类中必须有send方法 #BaseMessage类用于约束,约束其派生类:保证派生类中必须编写send方法,不然…
一.约束(重要***) 1.首先我们来说一下java和c#中的一些知识,学过java的人应该知道,java中除了有类和对象之外,还有接口类型,java规定,接口中不允许在方法内部写代码,只能约束继承它的类必须实现接口中定义的所有方法,为了便于理解,我们用python和java混合语法来写一下java中的接口,如下示例: interface IFoo: # 定义接口Ifoo,接口内部的方法不能写任何功能代码 def f1(self, x1): pass def f2(self, x1): pass…
程序运行过程中产生的错误, 不正常 def chufa(a, b): try: # 尝试执行xxx代码 ret = a/b # 如果这里出现了错误. 异常. 系统内部会产生一个异常对象. 系统会把这个错误抛出. 抛给调用方 return ret except ZeroDivisionError as e: # 内部产生的所有异常都会被捕获, 捕获的异常对象会交给e print(e) print("出错了. 0不能是除数") except FileNotFoundError as e:…
1.1shelve模块 shelve 模块比pickle模块简单,只有一个open函数,返回类似字典对象,可读可写:key必须为字符串, 而值可以是python所支持的数据类型. shelve模块主要用来存储一个简单的数据, shelve最重要的函数是open,在调用它的时候,使用文件名作为参数,它会返回一个架子(shelf)对象,可以用它来存储类容. f = shelve.open(r"shelve_test.txt") # aa = {"stu1":{"…
1.tiim模块,因为方法较多我就写在code里面了,后面有注释 #!/usr/bin/env python #_*_coding:utf-8_*_ print("time".center(60,"-")) print(time.asctime()) #返回字符串格式 外国的时间 #Fri Nov 18 11:25:08 2016 t = time.localtime() #本地时间 #print(t) #这是一个对象所以需要 print(t.tm_year,t.t…