用python实现用户名密码校验的具体代码,仅供参考,具体内容如下

需要实现功能:

  • 输入用户名密码 ;
  • 认证成功后显示 欢迎信息 ;
  • 连续输错三次后 锁定 ;

代码:

# Author ming
# version 3.5
# 输入用户名和密码
# 认证成功显示欢迎信息
# 连续输错三次锁定
count = 3
while True:
# 输入用户名密码:
    username = input("username:")
    password = input("password:")
# 打开用户名密码文件
    file_login = open("login.txt")
# 打开锁定用户名文件
    file_lock = open("login_lock.txt")
# 判断用户名是否在锁定文件中
    for line in file_lock:
        _username = line.strip()
        if username == _username:
            print(username,"被锁定")
            break
    else:
# 判断用户名密码是否正确
        for line in file_login:
            str = line.strip()
            _str = " "
            _username = str[:str.index(_str)]
            _password = str[str.index(_str)+1:]
# 用户名密码都正确,跳出计数器并打印欢迎信息
            if username == _username and password == _password:
                print("欢迎",username,"登录成功!!!")
                count = 3
                break
# 用户名正确,密码错误,打印提示信息,计数器减1,并判断计数器是否到0
            elif username == _username and password != _password:
                count -= 1
                print("密码错误!您还可以输入",count,"次数,超过3次该账户将被锁定")
# 计数器超过3次,将用户名写入锁定文件中,初始化计数器
                if count == 0:
                    file_lock = open("login_lock.txt","a+")
                    file_lock.write(_username+"\n")
                    file_lock.close()
                    count = 3
                break
# 用户名输入错误,输出提示信息
        else:
            print("请检查您的用户名输入是否错误")
            count = 3
        file_login.close()

注意:

  py文件同一目录下新建两个文件

  • login.txt
  • login_lock.txt

  其中login.txt文件存放用户名密码,login_lock.txt存放锁定的用户名

 login.txt的文件内容:

ming 1234
yao 1234
quan 1234