装饰器

Posted li33232

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了装饰器相关的知识,希望对你有一定的参考价值。

#编写一个装饰器,为多个函数加上认证功能
#要求登录一次成功之后,后续函数不需要登录
s = False
def login(func):
    def inner(*args,**kwargs):
        global s
        if s:
            ret = func(*args, **kwargs)
            return ret
        else:
            username = input(请输入用户名:)
            passwd = input(请输入密码:)
            if username == taibai and passwd == 22222:
                s = True
                ret = func(*args,**kwargs)
                return ret
            else:
                print(登录失败)
    return inner

@login
def shop_add():
    print(增加一件商品)

@login
def shop_del():
    print(删除一件商品)

shop_add()
shop_del()

 

以上是关于装饰器的主要内容,如果未能解决你的问题,请参考以下文章

python 装饰器:装饰器实例类装饰器(装饰函数)

装饰器、装饰器类与类装饰器(三)

Python进阶装饰器(Decorator)

python 装饰器:装饰器实例内置装饰器

python 装饰器:装饰器实例内置装饰器

TS之装饰器