首页 > 其他 > 详细

装饰器

时间:2018-10-20 21:44:52      阅读:177      评论:0      收藏:0      [点我收藏+]
from functools import wraps
Flag=True

def age(flag):
    def war(c):
        def inner(*arg,**args):
            ret=None
            if(flag):
                print("abc")
                ret=c(*arg,**args)
                print("def")
            else:
                ret=c(*arg,**args)
            return ret
        return  inner
    return  war


def sex(flag):
    def war(func):
        def inner(*arg,**args):
            ret = None
            if (flag):
                print("abc1")
                ret = func(*arg, **args)
                print("def1")
            else:
                ret = func(*arg, **args)
            return ret
        return inner
    return  war

@sex(Flag)
@age(Flag)
def cat(s):
 print("adsfasdf"+s)
 return  1


int= cat("ddddddddddddddddd")
print(int)

 

运行结果:

abc1
abc
adsfasdfddddddddddddddddd
def
def1
1

 

装饰器

原文:https://www.cnblogs.com/Celebrator/p/9822967.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!