"""

写代码

1、写一个登陆的程序,最多登陆失败3次

2、账号和密码分别存到一个list里面

3、要校验输入是否为空,不输入和输入空格都算空,失败次数也要加1

4、要校验账号是否存在,不存在的要提示,失败次数也要加1

5、登陆成功的话,提示欢迎xxx登陆,今天的日期是xxx

"""
#第一种账户和密码分布存到2个list中
import time #导入时间模块
#存储账号和密码
name=["zhaozhao1","zhaozhao2","zhaozhao3"]
passwd=["1234","12345","123456"]
num =0
#允许3次输入错误
while num<3:
#接收输入
loginname=input("请输入用户名:")
loginpw=input("请输入密码:")
# 空格和空的判断,strip去除空格,判断字符长度
if len(loginname.strip()) == 0 :
num += 1
print("用户名不能为空,登录失败%s次" %num)
elif len(loginname.strip()) != 0 and len(loginpw.strip())==0:
num += 1
print("密码不能为空,登录失败%s次" % num)
else:
# 遍历list,验证用户名和密码
for i in range(0,len(name)):
#数组未遍历到最后一个元素
if i
#用户名不匹配,继续遍历
if loginname!= name[i]:
continue
#用户名正确,密码错误,登录失败
elif loginname==name[i] and loginpw!=passwd[i]:
num+=1
print("密码错误,登录失败%s次" %num)
break
#用户名和密码均正确,跳出循环,不再遍历,登录成功
elif loginname==name[i] and loginpw==passwd[i]:
num=4
print("欢迎%s登陆,今天的日期是%s" %(loginname, time.strftime("%Y-%m-%d", time.localtime(time.time()))))
break
#数组遍历到最后一个元素
else:
#用户名不匹配,登录失败
if loginname!= name[i]:
num+=1
print("账号不存在,登录失败%s次" %num)
#用户名正确,密码错误,登录失败
elif loginname==name[i] and loginpw!=passwd[i]:
num+=1
print("密码错误,登录失败%s次" %num)
#用户名和密码均正确,登录成功
elif loginname==name[i] and loginpw==passwd[i]:
num=4
print("欢迎%s登陆,今天的日期是%s" %(loginname, time.strftime("%Y-%m-%d", time.localtime(time.time()))))
#第二种,账户和密码存储到一个list中
import time
#用户名及密码存储
logininfo=["zhaozhao","123456"]
num =0
#允许3次输入错误
while num<3:
loginname=input("请输入用户名:")
loginpw=input("请输入密码:")
#空格和空的判断,strip去除空格,判断字符长度
if len(loginname.strip()) == 0 :
num += 1
print("用户名不能为空,登录失败%s次" %num)
elif len(loginname.strip()) != 0 and len(loginpw.strip())==0:
num += 1
print("密码不能为空,登录失败%s次" % num)
#密码或者用户名不正确
elif loginname !=logininfo[0] or loginpw !=logininfo[1]:
num+=1
print("登录失败%s次"%num)
#用户名和密码均正确
elif loginname ==logininfo[0] and loginpw == logininfo[1]:
print("欢迎%s登陆,今天的日期是%s"%(loginname,time.strftime("%Y-%m-%d",time.localtime(time.time()))))
break
#第三种用户名和密码存储到list
import time
#用户名及密码存储
logininfo=[{"zhaozhao1":"1234"},{"zhaozhao2":"12345"},{"zhaozhao3":"123456"}]
num =0
#允许3次输入错误
while num<3:
loginname=input("请输入用户名:")
loginpw=input("请输入密码:")
#空格和空的判断,strip去除空格,判断字符长度
if len(loginname.strip())==0 or len(loginpw.strip())==0:
num+=1
print("登录失败%s次"%num)
else:
t = 0
#遍历list,验证用户名和密码
for i in logininfo:
#字典转换列表
name=list(i.keys())
passwd=list(i.values())
if t
if loginname != name[0] or loginpw != passwd[0] :
t+=1
elif loginname==name[0] and loginpw==passwd[0]:
num=4
print("欢迎%s登陆,今天的日期是%s" %(loginname, time.strftime("%Y-%m-%d", time.localtime(time.time()))))
else:
if loginname != name[0] or loginpw != passwd[0]:
t+=1
num+=1
print("登录失败%s次" %num)
elif loginname==name[0] and loginpw==passwd[0]:
num=4
print("欢迎%s登陆,今天的日期是%s" %(loginname, time.strftime("%Y-%m-%d", time.localtime(time.time()))))
#第四种字典存储用户名和密码
import time
# 用户名及密码存储
login_info = {"zhaozhao1": "1234", "zhaozhao2": "12345", "zhaozhao3": "123456"}
# 允许3次输入错误
num = 0
while num < 3:
loginname = str(input("请输入用户名:")).strip()
loginpw = str(input("请输入密码:")).strip()
# 空格和空的判断,strip去除空格,判断字符长度
if not loginname or not loginpw or loginname not in login_info:
num += 1
print("登录失败%s次" % num)
continue
elif login_info[loginname] == loginpw:
print("欢迎%s登陆,今天的日期是%s" % (loginname, time.strftime("%Y-%m-%d", time.localtime(time.time()))))
break
else:
num += 1
print("登录失败%s次" %num)
continue