基础需求:

  • 让用户输入用户名密码
  • 认证成功后显示欢迎信息
  • 输错三次后退出程序

升级需求:

  • 可以支持多个用户登录 (提示,通过列表存多个账户信息)
  • 用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)

1、多用户采用字典存用户信息,同一个用户输出三次用户就会被拉入黑名单锁定(同一用户可以连续或者非连续输错三次)

2、涉及到文件的建立,读取,写入知识点

 

 

 

user_info = {'aa':{'password':123,'count':3},
             'bb': {'password': 123, 'count': 3},
             'cc': {'password': 123, 'count': 3}}
while True:
    user_name = input('用户名:>').strip()
    pass_word = int(input('密码:>')).strip()
    if user_name not in user_info:
        continue
    else:
        file = open('black_name.txt','a')
        with open('black_name.txt','r') as f_b:
            f = f_b.read()
        if user_name in f :
            print('用户输错过多,被锁定!')
            break
        else:
            if pass_word == user_info[user_name]['password']:
                print('登录成功,欢迎您!')
                break
            else:
                user_info[user_name]['count'] -= 1
                print(f"您还有{user_info[user_name]['count']}次机会输入")
                if user_info[user_name]['count'] == 0:
                    with open('black_name.txt','w') as f_b:
                        f = f_b.write(user_name)
                    print('您输错过多,被锁定!')
                    break

 

posted on 2018-08-08 20:31  foremost  阅读(297)  评论(0编辑  收藏  举报