python约束 与MD5加密写法
python 中约束写法有两种
- 常用的通过继承关系主动抛出异常
- 通过抽象类+抽象方法
1 常用的通过继承关系主动抛出异常写法
在本send方法中报错不会抛出异常,
class BaseMessage(object):def send(self):"""必须继承BaseMessage,然后其中必须编写send方法。用于完成具体业务逻辑。"""raise NotImplementedError(".send() 必须被重写.") # 主动抛异常NotImplementedError,用exception也行但显得不专业# raise Exception(".send() 必须被重写.")class Email(BaseMessage): # 继承 BaseMessage 必须约束有send方法才行def send(self):pass # 发送邮件类def f1(self):passdef f2(self):passclass Wechat(BaseMessage): # 继承 BaseMessage 必须约束有send方法才行def send(self):pass # 发送微信类def f1(self):pass
BaseMessage类用于约束,约束其派生类:保证派生类中必须编写send方法,不然执行可能就会报错。
2 通过抽象类+抽象方法 (不常用因为编写麻烦)
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
from abc import ABCMeta,abstractmethodclass Base(metaclass=ABCMeta): # 抽象类def f1(self):print(123)@abstractmethod # 抽象方法装饰器def f2(self): # 抽象方法passclass Foo(Base):def f2(self):print(666)obj = Foo()
obj.f1()
加密
加密是不可逆的,为了防止撞库 必须有加盐操作
import hashlib # 导入hashlib 模块SALT = b'2erer3asdfwerxdf34sdfsdfs90' # 盐 盐必须是字节码def md5(pwd): # 传入密码# 实例化对象 加盐obj = hashlib.md5(SALT) # 写入要加密的字节obj.update(pwd.encode('utf-8'))# 获取密文return obj.hexdigest() # 21232f297a57a5a743894a0e4a801fc3 # 66fbdc0f98f68d69cd458b0cee975fe3 user = input("请输入用户名:")
pwd = input("请输入密码:")
if user == 'oldboy' and md5(pwd) == 'c5395258d82599e5f1bec3be1e4dea4a':print('登录成功')
else:print('登录失败')
python约束 与MD5加密写法相关推荐
- Python面向对象(约束,异常处理,md5加密)(五)
1. 类的约束 1. 写一个父类. 父类中的某个方法要抛出一个异常 NotImplementedError class Base:def login(self):raise NotImplemente ...
- Python编程之md5加密和sha1加密
Python编程之消息加密 在python中进行消息的加密,下面是md5加密方法和sha1加密方法: import hashlibdef my_md5(value):m = hashlib.md5() ...
- Python代码实现md5加密
#待加密信息 name = '123456' #创建md5对象.记得md5后面加括号 m = hashlib.md5() #此处必须声明encode m.update(name.encode(enco ...
- python实现md5加密_如何用Python编写一个MD5加密和解密代码
PythonMD5加密程序 # coding:utf-8 import hashlib md5 = hashlib.md5() # 应用MD5算法 data = input("请输入 ...
- python md5加密_Python MD5加密实例详解
详解Python MD5加密 Python 3下MD5加密 # 由于MD5模块在python3中被移除 # 在python3中使用hashlib模块进行md5操作 import hashlib # 待 ...
- python md5函数_python实现md5加密
Python中实现MD5加密是通过hashlib完成的.在演示之前,我们先创建一段文本作为加密数据.如下所示: hashlib_data.py #--encoding='utf-8'-- import ...
- python md5加密
http://hi.baidu.com/gavensun_wang/item/c93636be34ef4c56ba0e12cb Python中实现MD5加密是通过hashlib完成的.在演示之前,我们 ...
- 【Python】hashlib模块实现MD5加密
MD5消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被计算机安全领域广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value), ...
- python md5加密_如何用python“优雅”的调用有道翻译?
前言 其实在以前就盯上有道翻译了的,但是由于时间问题一直没有研究(我的骚操作还在后面,记得关注),本文主要讲解如何用python调用有道翻译,讲解这个爬虫与有道翻译的js"斗争"的 ...
最新文章
- 机器学习-线性回归与梯度下降
- 翻译 github上How to be a good programmer
- M2 Planning Day3
- 从mysql的官网下载tar.gz结尾的mysql
- 世界上迄今为止最安全的加密算法
- iview render的时候可以写控件的基本格式
- WordPress插件-Wordfence Security v7.4汉化版-可更新
- php过程函数,php流程控制和函数
- ShadeGraph教程之节点详解6:Procedural Nodes
- PAC自动代理文件格式,教你如何写PAC文件
- 「产品经理全连接系列2」企业如何开展敏捷或DevOps的研发变革
- Oracle数据导入导出imp/exp sp2-0734:未知的命令开头'imp...解决方法
- 关于MBR、GPT以及BIOS引导模式区分
- creo数控编程怎么样_世界一流数控编程软件,你都有了解过么?
- 时间序列分析的模型应用 – 股价预测
- B站4K视频下载方法
- DES算法是对称算法吗,能否通过在线工具进行DES解密?
- SQL join关联三个表或多个表
- 新人略谈关于积分墙盈利模式的思考
- Channel 通道详解