• 编写登陆接口


    # 作业:编写登陆接口
    #
    # 基础需求:
    #
    # 让用户输入用户名密码
    # 认证成功后显示欢迎信息
    # 输错三次后退出程序

    dic={ 'egon1':{'password':'123','count':0}, 'egon2':{'password':'123','count':0}, 'egon3':{'password':'123','count':0}, } while True: name = input('username>>: ') if not name in dic: print('用户不存在') continue if dic[name]['count']>2: print('尝试次数过多,锁定') continue password=input('password>>:') if password==dic[name]['password']: print('登录成功') break else: print('用户名或密码错误') dic[name]['count']+=1 print(dic[name]['count'])

    升级需求:

    • 可以支持多个用户登录 (提示,通过列表存多个账户信息)
    • 用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)
    • dic={
          'egon1':{'password':'123','count':0},
          'egon2':{'password':'123','count':0},
          'egon3':{'password':'123','count':0},
       }
      count=0
      while True:
          name=input('u>>:')
          if name not in dic:
              print('用户不存在')
              continue
          with open('db.txt','r') as f:
              lock_users=f.read().split('|')
              if name in lock_users:
                  print('用户%s已经被锁'%name )
                  break
          if dic[name]['count']>2:
              print('尝试次数过多,锁定')
              with open('db.txt','a') as f:
                  f.write('%s|' %name)
              break
          password=input('p>>:')
          if password==dic[name]['password']:
              print('登录成功')
              break
          else:
              print('用户名或密码错误')
              dic[name]['count']+=1
  • 相关阅读:
    计算机图形学——几何变换的数学基础
    算法设计与分析——多边形游戏(动态规划)
    算法设计与分析——凸多边形最优三角剖分(动态规划)
    计算机图形学——反走样
    Android 5.0 API
    Android 6.0 API
    Android 7.0 新增功能和api
    Android 8.0 功能和 API
    Android P 功能和 API
    解决华为手机无法输出Debug级别log的问题
  • 原文地址:https://www.cnblogs.com/zhanglin123/p/8044580.html
Copyright © 2020-2023  润新知