1.需要实现的功能:
- 让用户输入用户名密码
- 认证成功后显示欢迎信息
- 输错三次后退出程序
- 可以支持多个用户登录 (提示,通过列表存多个账户信息)
- 用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里
2.程序流程简图:
3.程序源码:
1 # -*- coding: utf-8 -*-
2
3 #用户名与密码保存在UserList.txt中,格式为XX:XXXXXX
4 #被锁定的用名保存在LockList.txt中
5 import sys
6 count = 0
7 while count < 3:
8 username = input("请输入你的用户名:")
9 locked_user = open('LockList.txt','r+')
10 locked_name = locked_user.readlines()
11 for locked_line in locked_name:
12 if username == locked_line.strip('
'):
13 print('该用户已被锁定')
14 sys.exit()
15 with open('UserList.txt', 'r') as user_file:
16 user_list = user_file.readlines()
17 for user_line in user_list:
18 (user, passkey) = user_line.strip('
').split(':')
19 if user == username:
20 password = input("请输入你的密码:")
21 if password == passkey:
22 print("欢迎您的到来!")
23 sys.exit()
24 else:
25 count += 1
26 print("输入错误%s次,三次后将退出,并锁定用户!"%count)
27 if count == 3:
28 locked_user.write(username + '
')
29 locked_user.close()
30 sys.exit()
31 break
32 else:
33 print("该用户不存在")
34 count += 1
35 continue