Python开发入门14天集训营·第1章Python基础语法-编写登陆认证程序

作业题目: 编写登陆认证程序

  • 作业需求:

    基础需求:
    让用户输入用户名密码
    认证成功后显示欢迎信息
    输错三次后退出程序
    
    升级需求:
    可以支持多个用户登录 (提示,通过列表存多个账户信息)
    用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)
     1 #!/usr/bin/env python
     2 # -*- coding=utf-8 -*-
     3 """
     4 @author:Wllen
     5 @file:user_pass.py
     6 @time:2018/5/14 11:44
     7 """
     8 user = {
     9     "wllen": {"password": 123456},
    10     "alex": {"password": "abc123"},
    11     "peiqi": {"password": "qwe456"}
    12 }
    13 count = 0
    14 f = open(file="lock.txt", mode="r", encoding="utf-8")       # 打开lock.txt文件
    15 lock_user = f.read()
    16 exit_flag = False   # 退出标志位
    17 username = input("请输入您的用户名:").strip()
    18 while not exit_flag:
    19     if username in lock_user:       # 判断用户名是否被锁定
    20         print("对不起,该用户已被锁定,请联系管理员处理!")
    21     else:
    22         if username not in user:        # 判断用户名是否存在
    23             print("用户名不存在,请重新输入!")
    24         else:
    25             if count < 3:   # 循环3次
    26                 password = input("请输入您的密码:").strip()
    27                 if password == user[username]["password"]:      # 验证用户名密码
    28                     print("欢迎 %s 来到python的世界!" % username)
    29                     break
    30                 else:
    31                     print("对不起,您输入的密码错误,请重新输入!")
    32                     count += 1
    33                     continue
    34             else:
    35                 with open('lock.txt', 'a+') as f: # 将锁定的用户名写入文件中
    36                     f.write(username)
    37                     f.write('\n')
    38                     print("对不起,您的账号%s已被锁定!" % username)
    39                     exit_flag = True
    View Code

猜你喜欢

转载自www.cnblogs.com/mifengwei/p/9038778.html