zoukankan      html  css  js  c++  java
  • Python 基础登入接口

    一:
    编写登陆接口
    基础需求:

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

    1.dic 方法
    name_info={'zhang':'123'}
    count=0
    
    while count<3:
        name=input('请输入用户名:')
        if name in name_info:
            password=input('请输入密码:')
            if password == name_info[name]:
                print('欢迎登入')
                break
            else:
                print('密码输入有误,请重新输入密码:')
                count+=1
        else:
            print('输入信息有误,请重新输入')
            count+=1
    
    

    2.list方法

    name_info=['zhang','123']
    count=0
    
    while count < 3:
        name=input('请输入用户名:')
        if name == name_info[0]:
            password=input('请输入密码:')
            if password == name_info[1]:
                print('欢迎登入')
                break
            else:
                print('密码输入错误,请重新输入')
                count+=1
        else:
            print('用户名输入错误,请重新输入')
            count+=1

    二:升级版需求:

        可以支持多个用户登录 (提示,通过列表存多个账户信息)
    用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)
    name_info={'zhang':{'passwd':'123','count':0},
               'xin':{'passwd':'123','count':0},
               'xiao':{'passwd':'123','count':0}
               }
    
    count=0
    
    while True:
        name=input('请输入你的用户名:')
        if name not in name_info:
            print('此用户名不存在,请重新输入!')
            continue
    
        with open('db.txt','r') as f:
            lock_users=f.read().split('|')
            if name in lock_users:
                print('用户%s已经被锁定' %name)
                break
    
        if name_info[name]['count'] > 2:
            print('尝试次数过多,被锁定')
            with open('db.txt', 'a') as f:
                f.write('%s|' % name)
            break
    
        # if name in name_info:
        password=input('请输入你的密码:')
        if password == name_info[name]['passwd']:
            print('登入成功')
            break
        else:
            print('密码输入错误,请重新输入:')
            name_info[name]['count']+=1
    
    
    
     
     
  • 相关阅读:
    dedecms图片列表效果调用
    ThinkPHP 中M方法和D方法的具体区别
    在线更新dede程序后 网站出现错误 DedeCMS Error:Tag disabled:"php" more...!
    Form元素示例
    PHP使用frameset制作后台界面时,怎样实现通过操作左边框架,使右边框架中的页面跳转?
    删除UTF-8 BOM头的GUI小工具
    解决 ultraedit 菜单字体模糊
    git使用及一些配置、问题
    shell之基本语法
    shell之iptables
  • 原文地址:https://www.cnblogs.com/zhangxinxiao/p/7127075.html
Copyright © 2011-2022 走看看