作业,熟悉--装饰器--格式化输出

# 1.编写装饰器,为多个函数加上认证的功能(用户的账号密码来源于文件),
# 要求登录成功一次,后续的函数都无需再输入用户名和密码\
bool_ = False
def login(func):
    def inner(*args,**kwargs):
        global bool_
        '''登陆'''
        if bool_:
            ret = func(*args, **kwargs)
            return ret
        else:
            username = input('帐号>>>')
            password = input('密码>>>')
            if username == 'chen' and password == 'jun':
                bool_ = True
                ret = func(*args, **kwargs)
                return ret
            else:
                print('登陆失败')
    return inner


@login
def shoplist_add(*args):
    print('增加{}件{}物品'.format(*args))
@login
def shoplist_del(*args):
    print('删除%s件%s物品'%args)
shoplist_add(5,'香蕉')
shoplist_del(2,'苹果')
View Code

 

转载于:https://www.cnblogs.com/chengoudan/p/10534453.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值