Python实现用户登录验证:三次错误自动锁定机制
本文介绍使用Python实现用户登录验证的完整流程,重点展示如何处理用户名密码校验及失败锁定逻辑。通过读取黑名单文件判断账号状态,验证用户存在性后允许最多三次密码输入尝试。若连续三次输入错误,系统将自动把该用户名写入黑名单文件并终止登录,确保账户安全。
本文通过Python3.0代码实例,演示如何实现用户登录模拟及三次错误后自动锁定账号的功能。
具体实现代码如下所示:
# -*- coding:utf-8 -*-
#需求模拟用户登录,超过三次错误锁定不允许登陆
count = 0
#realname passwd
Real_Username = "test"
Real_Password = "test"
#读取黑名单的内容
f = open('black_user','r')
lock_file = f.read()
f.close()
Username = input('请输入用户名:')
#判断输入用户是否在黑名单内,如果在则不允许输入密码
for i in range(1):
if lock_file == Username:
print('对不起,您的用户已锁定,暂时不允许使用!')
exit()
else:
continue
#尝试输入密码并对输入次数进行计数
for i in range(3):
Password = input("请输入密码:")
if Username == Real_Username and Password == Real_Password:
print("登录成功")
break
else:
print("登录失败")
count += 1
#如果输入三次错误密码,则提示用户名锁定,并将用户名拉黑
if count == 3:
print("对不起,您输入的密码错误次数已经达到3次,您的用户名将被锁定")
f = open("black_user","w")
f.write("%s"%Username)
f.close()
Python基础教程:实现用户密码登录验证,当输入错误次数达到三次时锁定账户。
作业需求说明:
1. 接收用户输入的用户名和密码。
2. 当身份认证成功后,显示欢迎信息。
3. 若密码连续输错三次,则锁定该账号。
实现思路如下:
1. 首先判断用户是否已存在于黑名单中,若存在则提示账号已被锁定。
2. 接着判断用户是否存在于系统中,若不存在则提示账号无效。
3. 最后验证账号与密码是否匹配,若正确则允许登录;若不正确,则给予三次输入密码的机会。若三次全部输错,则将该账号锁定。
#!/usr/bin/env python
#_*_conding:utf-8_*_
count = 0 #计数器
username = "aaa" #登录用户名
userpassword = "asd" #登录密码
#读取黑名单用户
f = open("aaa.txt","r")
file_list = f.readlines()
f.close()
lock = []
name = input("登录用户名:")
#判断用户是否在黑名单
for i in file_list:
line=i.strip("\n")
lock.append(line)
if name in lock:
print ("您的账号已锁定,请联系管理员。")
else:
#如果用户没有在黑名单,判断用户是否存在。
if name == username:
#如果密码连续输错三次,锁定账号。
while count <3:
password = input("登录密码:")
if name == username and password == userpassword:
print("欢迎,%s" %name )
break
else:
print("账号密码不匹配")
count += 1
else:
print ("对不起,您的账号连续输错三次账号已锁定,请联系管理员。")
f=open("aaa.txt","w+")
li=['%s'%username]
f.writelines(li)
f.close()
else:
print ("用户名不存在,请输入正确的用户名。")
以上关于Python3.0模拟用户登录及三次错误锁定功能的实例即为全部内容,希望能为读者提供参考,并欢迎大家继续支持本站。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













