实现三次登录
Posted ddd98dy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实现三次登录相关的知识,希望对你有一定的参考价值。
三次登录
写一个函数完成三次登录,三次不成功则登录失败,失败返回False,登陆成功返回True
用户的用户名和密码存储在文件中,该文件包含多个用户名以及对应的密码,
形式为:name|password,每个人占用文件的一行
实现代码:
def login():
flag = 0 # 用于三次循环
while 1:
flag += 1 # 进行一次,flag加一次
if flag > 3:
print("
登录已失败三次,结束!")
return False
print(f"
正在进行第 {flag} 次登录:")
user_name = input("请输入用户: ").strip() # 避免用户多输入空格
user_pwd = input("请输入密码: ").strip()
userDict = {} # 用户字典
f = open(‘users.txt‘, mode=‘r‘)
for user in f.readlines():
user = user.strip() # 去掉每行后面的换行符
# user.split(‘|‘)返回的是一个列表[‘admin‘, ‘admin_pwd‘]
user = user.split(‘|‘)
userDict[user[0]] = user[1]
f.close()
# userDict:{‘admin‘: ‘admin_pwd‘, ‘Tom‘: ‘Tom_pwd‘, ‘Jack‘: ‘Jack_pwd‘}
# userDict.get(user_name) 不存在返回None,存在则返回的是键对应的值(密码)
if user_pwd != userDict.get(user_name):
print("用户名或密码输入错误!")
continue # 进行下一次登录操作
else:
# 成功登录
return True
login() # 调用函数
测试结果1:
正在进行第 1 次登录:
请输入用户: admin
请输入密码: admin_pwd
True
测试结果2:
正在进行第 1 次登录:
请输入用户: ad
请输入密码: ad
用户名或密码输入错误!
正在进行第 2 次登录:
请输入用户: a
请输入密码: ss
用户名或密码输入错误!
正在进行第 3 次登录:
请输入用户: admin
请输入密码: 123
用户名或密码输入错误!
登录已失败三次,结束!
False
以上是关于实现三次登录的主要内容,如果未能解决你的问题,请参考以下文章