Python基于文件存储的简易登录验证实现
本文介绍使用Python实现基于本地文件的简易登录验证系统。通过input函数获取用户输入,利用pickle模块读取存储的用户名和密码列表进行比对。系统包含用户名校验与密码重试逻辑,当密码连续输入错误3次时将提示锁定并退出程序,旨在展示基础的文件IO与逻辑控制应用。
代码核心功能概述
本方案利用Python构建一个基础的登录验证流程,整体架构由两个主要部分构成
第一部分为登录交互界面,主要负责接收用户输入的用户名及密码信息
通过调用Python内置的input()函数分别获取用户名和密码输入值
第二部分为文件数据验证模块,负责核对输入信息与存储数据的一致性
在用户名验证环节,程序首先读取存储的用户名和密码数据,随后将输入的用户名与文件中的记录进行匹配。若匹配成功,则进入密码验证阶段;若未找到对应用户,则提示重新输入用户名。在密码验证环节,系统设定了输入次数上限:若用户连续3次输入密码错误,程序将终止运行;若在此限制内验证通过,则显示登录成功
登录交互界面代码实现
import text #text为文件名:text.py 用来实现文件验证
print("欢迎使用登陆")
username = input("请输入用户名:")
while text.CheckUsername(username)==-1:
username = input("没有该用户\n请输入用户名:")
else:
n=text.CheckUsername(username)
password = input("请输入密码:")
text.CheckUser(n,password)
文件验证逻辑代码实现
import pickle
def CheckUsername(name):#检验是否有该用户名
ff = open("D:\\test.txt", "rb")
n = pickle.load(ff)
# print(n)
# print(n[0][0])
# print(len(n))
ff.close()
for i in range(len(n)):
if name == n[i][0]:
return i
return -1#用来返回用户名所在位置
def CheckUser(x,psd):#x为用户名位置,pwd为密码
ff = open("D:\\test.txt", "rb")
n = pickle.load(ff)
# print(n)
# print(n[0][0])
# print(len(n))
ff.close()
i=1
while n[x][1]!=psd and i<3:
psd=input("请再次输入密码:")
i+=1
else:
if i<3:
print("登陆成功!")
else:
print("3次输入密码错误!已锁定")
程序运行结果截图
登录成功界面展示

用户名验证过程界面

密码验证过程界面

补充说明内容
用户名与密码在文件中的存储结构采用列表形式
import pickle
s=[["aaa","111"],["bbb","222"],["ccc","333"]]
f = open("D:\\test.txt","wb")
try:
pickle.dump(s,f)
except:
print("输入异常")
finally:
f.close()
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













