Python 官方文档:入门教程 => 点击学习
基础需求: 让用户输入用户名密码认证成功后显示欢迎信息输错三次后退出程序 #!/usr/bin/python #_*_coding:utf-8_*_ user_dic={ 'hgz1':{'passwd':'123','flag'
基础需求:
让用户输入用户名密码
认证成功后显示欢迎信息
输错三次后退出程序
#!/usr/bin/python
#_*_coding:utf-8_*_
user_dic={
'hgz1':{'passwd':'123','flag':'unlock'},
'hgz2':{'passwd':'123','flag':'unlock'},
'hgz3':{'passwd':'123','flag':'unlock'},
}
count_lock = 0 # 初始化账号锁定次数为0次
tag = True
while tag:
username=input('请输入用户名>>: ')
if username == '':
continue
passwd=input('请输入密码>>: ')
# 判断输入的用户名是否存在;
if user_dic.get(username):
# 账号是否锁定,锁定则退出;
if user_dic[username]['flag'] == 'lock':
print('账号已经锁定,请解锁!')
break
# 判断输入的密码是否正确,正确则显示登陆成功;
if user_dic[username]['passwd'] == passwd:
print('Login Successfull!')
break
else:
# 密码不正确登录次数加一
count_lock += 1
# 判断用户登陆次数是否超出限制
if (3 - count_lock):
print('账号或密码错误,还有 %s 次机会尝试登陆!' % (3 - count_lock))
# 用户尝试登录次数超过3次的时候,直接锁定账号
if count_lock == 3:
user_dic[username]['flag'] = 'lock'
print('您的账号已被锁定')
break
else:
# 输入账号不正确告知用户
print('您输入的账号不存在,请重新输入!')
continue
升级需求:
可以支持多个用户登录 (提示,通过列表存多个账户信息)
用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)
#!/usr/bin/Python
#_*_coding:utf-8_*_
import pickle
import os
user_dic={
'hgz1':{'passwd':'123','flag':'unlock'},
'hgz2':{'passwd':'123','flag':'unlock'},
'hgz3':{'passwd':'123','flag':'unlock'},
}
# 载入用户账户密码信息
with open('account.pkl','rb') as f:
user_dic = pickle.load(f)
# 初始化账号锁定次数为0次
count_lock = 0
tag = True
while tag:
username=input('请输入用户名>>: ')
if username == '':
continue
passwd=input('请输入密码>>: ')
# 判断输入的用户名是否存在;
if user_dic.get(username):
# 账号是否锁定,锁定则退出;
if user_dic[username]['flag'] == 'lock':
print('账号 %s 已被锁定,请解锁!' % username)
break
# 判断输入的密码是否正确,正确则显示登陆成功;
if user_dic[username]['passwd'] == passwd:
print('Login Successfull!')
break
else:
# 密码不正确登录次数加一
count_lock += 1
# 判断用户登陆次数是否超出限制
if (3 - count_lock):
print('账号或密码错误,还有 %s 次机会尝试登陆!' % (3 - count_lock))
# 用户尝试登录次数超过3次的时候,直接锁定账号
if count_lock == 3:
with open('account.pkl','wb') as f:
# 标志用户为锁定状态
user_dic[username]['flag'] = 'lock'
user_dic = pickle.dump(user_dic, f)
print('您的账号 %s 已被锁定!' % username)
break
else:
# 告知用户输入账号不正确
print('您输入的账号不存在,请重新输入!')
continue
--结束END--
本文标题: python登录接口
本文链接: https://lsjlt.com/news/184061.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0