老男孩Day1作业(一):编写登录接口
需求:编写登陆接口
1. 用户输入帐号密码进行登陆
2. 用户信息保存在文件内
3. 用户密码输入错误三次后锁定用户
1)编写思路
编写思路参考下面GitHub链接中的流程图
2)具体实现
1 #-*- Coding:utf-8 -*- 2 # Author: D.Gray 3 4 # 创建了user_info是用户文件,user_lock是被锁用户文件 5 # 作业需求: 6 # 1. 用户输入帐号密码进行登陆 7 # 2. 用户信息保存在文件内 8 # 3. 用户密码输入错误三次后锁定用户 9 10 import sys,getpass,os 11 12 count = 0 #定义一个while循环次数变量 13 print('****************欢迎来到英雄联盟******************') 14 login_name = input('请输入用户名>>>: ') 15 16 lock_file = open('user_lock.txt','r+') #定义lock_file变量以读写模式打开 user_lock.txt文本 17 lock_list = lock_file.readlines() #定义lock_list变量读取 user_lock.txt文本内容 18 19 for lock_info in lock_list: #循环遍历user_lock.txt文本内容 20 lock = lock_info.split() #定义一个lock变量,以列表形式存储user_lock.txt文本内容 21 #print(lock) 22 if login_name in lock: #判断输入的用户名是否已在绑定名单中 23 sys.exit('您已被锁定...请联系管理员') 24 25 26 user_file = open('user_info.txt','r+') #定义user_file变量以读写模式打开 user_info.txt文本 27 user_list = user_file.readlines() #定义user_list变量读取 user_info.txt文本内容 28 for user_info in user_list: #循环遍历user_info.txt文本内容 29 user = user_info.split() #定义一个user变量,以列表形式存储user_info.txt文本内容 30 #print(user) 31 if login_name in user: #判断用户是否存在用户列表中 32 while count < 3: #当密码输入次数>3时,退出循环 33 login_pwd = input('请输入密码>>>: ') 34 if login_pwd == user[1]: #判断输入密码是否正确 35 sys.exit('登录成功,欢迎 %s 登录' % user[0]) 36 else: 37 count += 1 38 print('密码输入错误,请重新输入...您还有 %s 次机会' % (3-count)) 39 else: #密码输入>=3时,执行一下操作 40 lock_file.write(login_name + '\n') #把login_name写到文件中,write()并不会在str后加上一个换行符 41 sys.exit('密码输错3次,该用户已被绑定') 42 else: 43 sys.exit('用户不存在') #输入的用户名不在user_info用户列表中,给出“用户不存在提示” 44 user_file.close() 45 lock_file.close()
3)Github笔记
第一天的笔记的地址是:
第一天作业的地址是:
4)Readme.md文档