Python实现用户名密码校验与三次锁定机制
本文提供Python实现的简易用户名密码校验程序。核心功能包括接收用户输入、验证账号密码匹配度,并在连续输错三次后自动锁定账户。程序依赖同级目录下的login_true.txt存储合法凭证,利用login_lock.txt记录被锁定用户。代码包含详细的逻辑判断与文件处理流程,适合初学者参考学习文件IO及循环控制结构。
本文分享了一个使用Python编写的用户名与密码校验示例代码,供读者参考学习。
功能需求说明
该程序需要实现以下核心功能:
首先,接收用户输入的用户名和密码;其次,在认证成功时显示欢迎信息;最后,若用户连续输错密码达到三次,则对该账户进行锁定处理。
程序运行逻辑说明如下:
具体实现细节请参考代码注释,主要流程包括:第一,获取用户输入的用户名和密码;第二,检查该用户名是否已存在于锁定文件中;第三,验证用户名和密码是否匹配正确。
代码实现与逻辑
相关实现代码如下:
# 输入用户名密码
# 认证成功后显示欢迎信息
# 连续输错三次后锁定
count = 0
while True:
#输入用户名密码
username = input("Username:")
password = input("Password:")
#打开用户名密码文件
f = open('login_true.txt')
#打开锁定用户名文件
f4 = open('login_lock.txt')
#判断输入用户名是否存在于锁定文件中
for line in f4:
user_name2 = line.strip()
if username == user_name2:
print("username is locked!")
break
else:
#判断用户名密码是否正确
for line in f:
str = line.strip()
str2 = ','
user_name = str[:str.index(str2)]
pass_word = str[str.index(str2)+1:]
# print(user_name, pass_word)
#用户名密码均正确,打印欢迎信息并清空计数器跳出循环
if username == user_name and password == pass_word:
print("welcome " + username)
count = 0
break
#用户名正确,密码错误,打印提示信息,计数器加1,并判断计数器是否到3
elif username == user_name and password != pass_word:
print("wrong password!")
count += 1
print(count)
#计数器到达3次,将用户名写入锁定文件中
if count == 3:
f2 = open('login_lock.txt', "a+")
f2.write(username+'\n')
f2.close()
count = 0
break
else:
print("please check out your username!")
count = 0
f.close()
环境配置与注意事项
使用前需注意以下环境配置:
请在Python脚本所在的同一目录下创建两个文本文件:login_true.txt,用于预先存储合法的用户名和密码对。

同时创建login_lock.txt,该文件用于存储被锁定的用户名列表。
以上内容为本文的全部介绍,希望能为读者的学习提供一定帮助,欢迎继续支持本站获取更多技术资源。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









