python-login 绝地灬酷狼 2021-12-11 11:49 237阅读 0赞 ''' 写代码 1、写一个登陆的程序,最多登陆失败3次 2、账号和密码分别存到一个list里面 3、要校验输入是否为空,不输入和输入空格都算空,失败次数也要加1 4、要校验账号是否存在,不存在的要提示,失败次数也要加1 5、登陆成功的话,提示欢迎xxx登陆,今天的日期是xxx ''' **\#第一种账户和密码分布存到2个list中** 1 import time #导入时间模块 2 3 #存储账号和密码 4 name=['zhaozhao1','zhaozhao2','zhaozhao3'] 5 passwd=['1234','12345','123456'] 6 7 num =0 8 9 #允许3次输入错误 10 while num<3: 11 #接收输入 12 loginname=input("请输入用户名:") 13 loginpw=input("请输入密码:") 14 15 # 空格和空的判断,strip去除空格,判断字符长度 16 if len(loginname.strip()) == 0 : 17 num += 1 18 print("用户名不能为空,登录失败%s次" %num) 19 20 elif len(loginname.strip()) != 0 and len(loginpw.strip())==0: 21 num += 1 22 print("密码不能为空,登录失败%s次" % num) 23 24 25 else: 26 # 遍历list,验证用户名和密码 27 for i in range(0,len(name)): 28 29 #数组未遍历到最后一个元素 30 if i<len(name)-1: 31 #用户名不匹配,继续遍历 32 if loginname!= name[i]: 33 continue 34 #用户名正确,密码错误,登录失败 35 elif loginname==name[i] and loginpw!=passwd[i]: 36 num+=1 37 print("密码错误,登录失败%s次" %num) 38 break 39 #用户名和密码均正确,跳出循环,不再遍历,登录成功 40 elif loginname==name[i] and loginpw==passwd[i]: 41 num=4 42 print("欢迎%s登陆,今天的日期是%s" %(loginname, time.strftime('%Y-%m-%d', time.localtime(time.time())))) 43 break 44 45 #数组遍历到最后一个元素 46 else: 47 #用户名不匹配,登录失败 48 if loginname!= name[i]: 49 num+=1 50 print("账号不存在,登录失败%s次" %num) 51 #用户名正确,密码错误,登录失败 52 elif loginname==name[i] and loginpw!=passwd[i]: 53 num+=1 54 print("密码错误,登录失败%s次" %num) 55 #用户名和密码均正确,登录成功 56 elif loginname==name[i] and loginpw==passwd[i]: 57 num=4 58 print("欢迎%s登陆,今天的日期是%s" %(loginname, time.strftime('%Y-%m-%d', time.localtime(time.time())))) **\#第二种,账户和密码存储到一个list中** 1 import time 2 3 #用户名及密码存储 4 logininfo=['zhaozhao','123456'] 5 num =0 6 #允许3次输入错误 7 while num<3: 8 loginname=input("请输入用户名:") 9 loginpw=input("请输入密码:") 10 #空格和空的判断,strip去除空格,判断字符长度 11 if len(loginname.strip())==0 or len(loginpw.strip())==0: 12 num+=1 13 print("登录失败%s次"%num) 14 #密码或者用户名不正确 15 elif loginname !=logininfo[0] or loginpw !=logininfo[1]: 16 num+=1 17 print("登录失败%s次"%num) 18 #用户名和密码均正确 19 elif loginname ==logininfo[0] and loginpw == logininfo[1]: 20 print("欢迎%s登陆,今天的日期是%s"%(loginname,time.strftime('%Y-%m-%d',time.localtime(time.time())))) 21 break **\#第三种用户名和密码存储到list** 1 import time 2 #用户名及密码存储 3 logininfo=[{ 'zhaozhao1':'1234'},{ 'zhaozhao2':'12345'},{ 'zhaozhao3':'123456'}] 4 num =0 5 #允许3次输入错误 6 while num<3: 7 loginname=input("请输入用户名:") 8 loginpw=input("请输入密码:") 9 #空格和空的判断,strip去除空格,判断字符长度 10 if len(loginname.strip())==0 or len(loginpw.strip())==0: 11 num+=1 12 print("登录失败%s次"%num) 13 else: 14 t = 0 15 #遍历list,验证用户名和密码 16 for i in logininfo: 17 #字典转换列表 18 name=list(i.keys()) 19 passwd=list(i.values()) 20 if t<len(logininfo)-1: 21 if loginname != name[0] or loginpw != passwd[0] : 22 t+=1 23 elif loginname==name[0] and loginpw==passwd[0]: 24 num=4 25 print("欢迎%s登陆,今天的日期是%s" %(loginname, time.strftime('%Y-%m-%d', time.localtime(time.time())))) 26 else: 27 if loginname != name[0] or loginpw != passwd[0]: 28 t+=1 29 num+=1 30 print("登录失败%s次" %num) 31 elif loginname==name[0] and loginpw==passwd[0]: 32 num=4 33 print("欢迎%s登陆,今天的日期是%s" %(loginname, time.strftime('%Y-%m-%d', time.localtime(time.time())))) ** \#第四种字典存储用户名和密码** 1 import time 2 3 # 用户名及密码存储 4 login_info = { 'zhaozhao1': '1234', 'zhaozhao2': '12345', 'zhaozhao3': '123456'} 5 6 # 允许3次输入错误 7 num = 0 8 while num < 3: 9 loginname = str(input("请输入用户名:")).strip() 10 loginpw = str(input("请输入密码:")).strip() 11 # 空格和空的判断,strip去除空格,判断字符长度 12 if not loginname or not loginpw or loginname not in login_info: 13 num += 1 14 print("登录失败%s次" % num) 15 continue 16 17 if login_info[loginname] == loginpw: 18 print("欢迎%s登陆,今天的日期是%s" % (loginname, time.strftime('%Y-%m-%d', time.localtime(time.time())))) 19 break 20 else: 21 num += 1 22 print("登录失败%s次" % num) 23 continue 转载于:https://www.cnblogs.com/xiaokuangnvhai/p/10898992.html
还没有评论,来说两句吧...