zoukankan      html  css  js  c++  java
  • Python 编写登录接口(第一天)

    作业:编写登录接口

    • 输入用户名密码
    • 认证成功后显示欢迎信息
    • 输错三次后锁定
    
    
    import sys #标准库
    import os #标准库,不需要安装插件
    import getpass #引入getpass模块
    class Login(): # Login类
    def userInfo(self,userInfoAddr):
    #将用户名密码信息处理成一个字典
    with open("userInfo","r+") as file:
    user_dic={}
    for i in file: #遍历file文件
    user_List = i.split(":")
    user_dic.update({user_List[0]:user_List[1].rstrip()})
    return user_dic

    def lock_Info(self,lock_infoAddr): #锁定用户列表
    #将否定的文件处理成一个列表
    with open("lock_Info","r") as file:
    userList = []
    for i in file:
    userList.append(i.rstrip())
    return userList

    def lockUser(self,username):
    #如果相同用户登录三次就调用此函数,该用户将永久锁定,写入文件
    with open("lock_Info","a") as file:
    file.write(username+" ")

    def userLogin(self):
    Lock_list = [] #锁定用户列表
    while True:
    username = input("username:")
    password = input("password")
    if Lock_list.count(username) < 3:
    lock = self.lock_Info(r"D:Python_SpaceWorkOne_Joblock_Info")
    user = self.userInfo(r"D:Python_SpaceWorkOne_JobuserInfo")
    if username not in lock: #输入用户没有锁定
    if username in user: #判断用户是否存在
    if user[username] == password:
    print("success")
    break
    else:
    Lock_list.append(username) #放入锁定列表
    print("密码错误!")
    else:
    Lock_list.append(username)
    print("用户名错误!!")
    else:
    print("此用户已被禁用")
    else:
    self.lockUser(username)
    print("用户登录次数超过限制,已禁用")
    if __name__ == "__main__":
    Login = Login()
    Login.userLogin()
     
  • 相关阅读:
    团队作业 总结
    个人作业 Alpha项目测试
    第二次作业
    交互式多媒体图书平台的设计与实现
    基于VS Code的C++语言的构建调试环境搭建指南
    码农的自我修养之必备技能 学习笔记
    工程化编程实战callback接口学习
    如何测评一个软件工程师的计算机网络知识水平和编程能力
    深入理解TCP协议及其源代码
    Socket与系统调用深度分析
  • 原文地址:https://www.cnblogs.com/luckHuang/p/9743159.html
Copyright © 2011-2022 走看看