作业:编写登陆接口
输入用户名密码
认证成功后显示欢迎信息
输错三次后锁定
1.先创建锁文件account_lock.txt,内容可以为空
2.再创建用户密码信息文件account.txt
eg.
wo 123
ni 123
ta 123
3.画流程图
4.写代码
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
1 # Author:larlly 2 import sys,os 3 4 i = 0 5 while i < 3: 6 name = input("请输入用户名:") 7 lock_file = open('account_lock.txt','r+') 8 lock_list = lock_file.readlines() 9 10 for lock_line in lock_list: 11 lock_line = lock_line.strip('\n') 12 if name == lock_line: 13 sys.exit('用户 %s 已经被锁定,退出' % name) 14 15 user_file = open('account.txt','r') 16 user_list = user_file.readlines() 17 for user_line in user_list: 18 (user,password) = user_line.strip('\n').split() 19 if name == user: 20 j = 0 21 while j < 3: 22 passwd = input('请输入密码:') 23 if passwd == password: 24 print('欢迎登录,用户%s' % name) 25 sys.exit(0) 26 else: 27 if j < 2: 28 print('用户 %s 密码错误,请重新输入,还有 %d 次机会' % (name,2 - j)) 29 j += 1 30 else: 31 lock_file.write(name + '\n') 32 sys.exit('用户 %s 达到最大登录次数,将被锁定并退出' % name) 33 else: 34 pass 35 else: 36 if i < 2: 37 print('用户 %s 不存在,请重新输入,还有 %d 次机会' % (name,2 - i)) 38 i += 1 39 else: 40 sys.exit('用户 %s 不存在,退出' % name) 41 42 lock_file.close() 43 user_file.close()