zoukankan      html  css  js  c++  java
  • Python学习————作业

    1、把登录与注册的密码都换成密文形式

    import hashlib
    
    def register():
        m = hashlib.md5()
        username = input('请输入账号:')
        password = input('请输入密码:')
        password1 = input('请再次输入密码:')
        with open('log.txt', 'r', encoding='utf-8')as rf:
            for line in rf:
                name, pwd = line.strip().split(":")
                if name == username:
                    print('用户名已存在,请重新输入!')
                    break
                else:
                    if password==password1:
                        m.update(password.encode("utf-8"))
                        res = m.hexdigest()
                        with open('log.txt','a',encoding='utf-8')as af:
                            af.write('{}:{}'.format(username,password) + '
    ')
                            print('注册成功!')
                            break
                    else:
                        print('两次输入的密码不一致,请重新输入!')
                        break
    def login():
        print('登录'.center(30,'-'))
        user_inp = input("请输入账号:")
        pwd_inp = input("请输入密码:")
        with open('log.txt','r',encoding='utf-8')as rf:
            user = hashlib.md5()
            user.update(pwd_inp.encode("utf-8"))
            res = user.hexdigest()
            for line in rf:
                username,password = line.strip().split(":")
                if user_inp ==username and res == password:
                    print("登录成功")
                    break
                else:
                    print('登录失败')
    
    
    
    register()
    login()
    

    2、文件完整性校验(考虑大文件)

    
    

    3、注册功能改用json实现

    import json
    import hashlib
    
    def register():
        m = hashlib.md5()
        username = input("请输入账号:")
        password = input("请输入密码:")
        password2 = input("请再次输入密码:")
        if password==password2:
            m.update(password.encode("utf-8"))
            res = m.hexdigest()
            print(res)
            with open("log.txt","a",encoding="utf-8")as f:
                user_dict = {username:res}
                json.dump(user_dict, f)
    register()
    

    4、项目的配置文件采用configparser进行解析

    
    
  • 相关阅读:
    OSI安全体系结构
    PHP 二维数组根据相同的值进行合并
    Java实现 LeetCode 17 电话号码的字母组合
    Java实现 LeetCode 16 最接近的三数之和
    Java实现 LeetCode 16 最接近的三数之和
    Java实现 LeetCode 16 最接近的三数之和
    Java实现 LeetCode 15 三数之和
    Java实现 LeetCode 15 三数之和
    Java实现 LeetCode 15 三数之和
    Java实现 LeetCode 14 最长公共前缀
  • 原文地址:https://www.cnblogs.com/x945669/p/12608849.html
Copyright © 2011-2022 走看看