Python小程序练习一之登陆接口
程序员文章站
2022-07-10 17:38:34
登陆接口并实现猜数字游戏 输入用户名密码 认证成功后显示欢迎信息 进行猜数字游戏,可猜三次 输错三次后锁定 输入用户名密码 认证成功后显示欢迎信息 进行猜数字游戏,可猜三次 输错三次后锁定 1、Adduser.py 1 # The author is tou 2 import pickle 3 #初 ......
登陆接口并实现猜数字游戏
- 输入用户名密码
- 认证成功后显示欢迎信息
- 进行猜数字游戏,可猜三次
- 输错三次后锁定
1、Adduser.py
1 # The author is tou 2 import pickle 3 #初始化用户以及密码 4 user_dict = {"admin":{"passwd":"admin","flag":"unlock"}} #字典 5 6 #把账号,密码保存到文件中 7 with open("admin.txt","wb+",)as f_write: 8 pickle.dump(user_dict,f_write) 9 with open("admin.txt","rb+")as f_read: 10 x = pickle.load(f_read) 11 print(x)
2、Log In.py
1 # The author is tou 2 import pickle 3 import random 4 5 with open("admin.txt","rb+") as f: #载入用户账户密码信息 6 user_dict = pickle.load(f) 7 exit_flag = False #初始化锁定的状态为false 8 count_lock = 0 #初始化账号锁定次数为0次 9 10 print("*********欢迎登陆************".center(10)) 11 while True: 12 user = input("请输入账号:").strip() #strip()的作用是在输入账号密码的时候去掉你输入数据中最前面或者最后面的空格 13 if user == "":continue #用户名为空,重新输入 14 passwd = input("请输入密码:").strip() 15 16 #判断是否存在输入的账号 17 if user_dict.get(user): 18 #判断账号是否锁定,锁定则退出 19 if user_dict[user]["flag"] == "lock": 20 print("账号已经锁定,请解锁!") 21 break 22 #验证密码是否正常 23 if user_dict[user]["passwd"] == passwd: 24 while True: 25 guess_choise = input("你要开始玩猜数字游戏吗?(选择yes或no):").strip() 26 if guess_choise == "":continue 27 elif guess_choise =="yes": 28 print("欢迎登陆Python自动化开发——猜数字游戏系统") 29 print("******************************************") 30 print("猜数字的范围在1到10之间") 31 real_num = random.randrange(1,11) #随机生成1到10之间的一个数字 32 retry_count = 0 33 while retry_count<3: #有3次机会猜数字 34 guess_num = input("请输入你猜的数字:").strip() 35 if guess_num == "":continue 36 if guess_num.isdigit(): #isdigit() 方法检测字符串是否只由数字组成。 37 guess_num = int(guess_num) 38 if guess_num > real_num: 39 print("错误,请输入一个小一点的数字!") 40 elif guess_num < real_num: 41 print("错误,请输入一个大一点的数字!") 42 else : 43 print("恭喜你,猜到你的幸运数字%s!!!"%real_num) 44 break 45 else: 46 print("输入的不是数字,请重新输入一个数字") 47 continue 48 retry_count +=1 49 if retry_count == 3: 50 print("三次机会已用完,幸运数字是%s"%real_num) 51 break 52 53 elif guess_choise == "no": #不想猜数字游戏,则直接退出系统 54 print("欢迎再次登录!") 55 exit_flag = True 56 break 57 else: 58 print("你输入的不是yes或者no,请重新输入") 59 continue 60 else: 61 count_lock +=1 #密码不正确,统计输错次数 62 if(3-count_lock): 63 print("账号或密码错误,还有%s次机会尝试登陆!"%(3-count_lock)) 64 65 if count_lock == 3: #若锁定次数有3次,就锁定账号 66 with open("admin.txt","wb+") as f: 67 user_dict["admin"]["flag"] = "lock" #标记账号admin为锁定状态 68 user_dict = pickle.dump(user_dict,f) #修改后的数据写到admin.txt中 69 print("**************************************************") 70 print("账号被锁定,请解锁!") 71 break 72 else: 73 print("输入的账号不存在,请重新输入!") 74 continue 75 76 if exit_flag: 77 break 78 print("拜拜!!!")
转载:文章出处
上一篇: js 打印