Python小程序练习一之登陆接口
2018-06-18 02:22:14来源:未知 阅读 ()
登陆接口并实现猜数字游戏
- 输入用户名密码
- 认证成功后显示欢迎信息
- 进行猜数字游戏,可猜三次
- 输错三次后锁定
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("拜拜!!!")
转载:文章出处
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash