python语言入门之约束、异常处理与MD5加密
沉沙 2018-12-28 来源 : 阅读 795 评论 0

摘要:本篇教程探讨了python语言入门之约束、异常处理与MD5加密,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。

本篇教程探讨了python语言入门之约束、异常处理与MD5加密,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入。

python语言入门之约束、异常处理与MD5加密

<

1. 类的约束
  1. 写一个父类. 父类中的某个方法要抛出一个异常 NotImplementedError (重点)
  2. 抽象类和抽象方法
#  语法
# from abc import ABCMeta, abstractmethod
# class Base(metaclass = ABCMeta):
#     @abstractmethod
#     def fangfa(self):pass
    
# 抽象类
from abc import ABCMeta, abstractmethod
# 抽象类不能创建对象
class Animal(metaclass=ABCMeta): # 写完这个东西就是抽象类
    @abstractmethod # 抽象方法
    def chi(self): pass
    # 抽象类中是可以有正常的方法
    def dong(self):
        print('动物会动')
# class Cat(Animal): # 此时猫里面也有一个抽象方法, 此时的猫是无法创建对象的
#     pass
#
# c = Cat()  # 此时是报错的
class Cat(Animal):
    def chi(self): # 重写父类中的抽象方法
        print('猫喜欢吃鱼')
c = Cat()
c.chi() # 猫喜欢吃鱼
c.dong() #  动物会动
2. 异常处理.
# 语法格式
try:
    # 代码
except 异常类:
    # 除了错, 如何处理异常
except 异常类:
    # 除了错, 如何处理异常
except 异常类:
    # 除了错, 如何处理异常
else:
    # 当程序不出错
finally:
    # 不管出不出错, 都要执行
try:
    print(1/0)
    # f = open("哈哈哈哈哈", mode="r")
    # d = {[]:123}
except ZeroDivisionError: # 可以处理所有错误
    print("除以0出错了")
except FileNotFoundError:
    print("文件不存在的错误")
except Exception: # 兜底的
    print("其他错误")
else: # 当try中的代码不产生任何错误的时候. 会自动的执行else里的代码
    pass
finally: # 最终. 不管出错还是不出错. 都要执行最后的finally 一般用来收尾
    print("哈哈哈哈哈哈哈哈啊哈")
3. MD5
import hashlib # MD5需要导入这个模块
# 加密的内容(需要是字节类型)
obj = hashlib.md5(b'liuliuliuliuliuliu') # 加盐
obj.update('123456'.encode('utf-8')) # 把要加密的内容给md5
print(obj.hexdigest()) # 拿到密文b8de0312dbab0c85cba71b121456f98c
# 应用
def my_md5(s):
    obj = hashlib.md5(b'liuliuliuliuliuliu')  # 123456的MD5密文
    obj.update(s.encode('utf-8'))
    return obj.hexdigest()
print(my_md5('123456')) # b8de0312dbab0c85cba71b121456f98c
username = 'alex'
password = 'b8de0312dbab0c85cba71b121456f98c'
# 登陆
uname = input('请输入用户名:')
upwd = input('请输入你的密码:')
if uname == username and my_md5(upwd) == password:
    print('登陆成功')
else:
    print('登陆失败')    

本文由职坐标整理发布,学习更多的相关知识,请关注职坐标IT知识库!

本文由 @沉沙 发布于职坐标。未经许可,禁止转载。
喜欢 | 1 不喜欢 | 1
看完这篇文章有何感觉?已经有2人表态,50%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程