zoukankan      html  css  js  c++  java
  • 一个简单的登录

    user_dic={'username':None,'login':False}
    
    def auth_func(func):
        def wrapper(*args,**kwargs):
            if user_dic['username'] and user_dic['login']:    #判断用户是否有登录(有用户名且已经登录的情况下直接跳过验证)
                res=func(*args,**kwargs)
                return res
            username=input('请输入你的用户名:').strip()
            password=input('请输入你的密码:').strip()
            if username=='xiaoma' and password=='123456':
                user_dic['username']=username
                user_dic['login']=True
                res=func(*args,**kwargs)
                return res
    
            else:
                print('用户名或密码错误,请重新输入!')
    
        return wrapper
    
    @auth_func
    def index():
        print('欢迎来到淘宝首页,祝你购物愉快!')
    
    @auth_func
    def home(name):
        print('欢迎来到个人中心!')
    
    @auth_func
    def shopping_car(name):
        print('%s的购物车里有[%s,%s,%s]' %(name,'日用品','化妆品','厨卫'))
    
    
    index()
    home('小马')
    shopping_car('小马')
    user_list=[
        {'name':'小张','password':'123'},
        {'name':'小黄','password':'123'},
        {'name':'小李','password':'123'},
        {'name':'小周','password':'123'},
    ]
    
    current_dic={'username':None,'login':False}
    
    def auth_func(func):
        def wrapper(*args,**kwargs):
            if current_dic['username'] and current_dic['login']:    #判断用户是否有登录(有用户名且已经登录的情况下直接跳过验证)
                res=func(*args,**kwargs)
                return res
            username=input('请输入你的用户名:').strip()
            password=input('请输入你的密码:').strip()
            for user_dic in user_list:
                if username==user_dic['name'] and password==user_dic['password']:
                    current_dic['name']=username
                    current_dic['login']=True
                    res=func(*args,**kwargs)
                    return res
            else:
                print('用户名或密码错误!')
    
        return wrapper
    
    @auth_func
    def index():
        print('欢迎来到华夏家博会首页,祝你购物愉快!')
        
    @auth_func
    def home(name):
        print('欢迎来到个人中心%s!' %name)
        
    @auth_func
    def shopping_car(name):
        print('%s的购物车里有[%s,%s,%s]' %(name,'日用品','化妆品','厨卫'))
    
    print('before-->',current_dic)
    index()
    print('after--->',current_dic)
    home('小张')
    shopping_car('小张')
  • 相关阅读:
    通过在vs中”程序包管理器控制台“的输入命令来实现下载和安装所需版本的Mysql.data和Mysql.Data.Entity.EF6
    ireport使用问题
    mysql数据库迁移到达梦数据库
    Idea配置热部署
    阿里云双12年终钜惠
    移动端弹性布局方案lib-flexible实践
    阿里云服务器2折起
    javascript百度地图使用(根据地名定位、根据经纬度定位)
    js拖拽上传图片
    javascript xml转json
  • 原文地址:https://www.cnblogs.com/majunBK/p/10892586.html
Copyright © 2011-2022 走看看