类装饰器

Posted xone

tags:

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

 __call__的用法

class Test(object):
    def __call__(self):
        print("---call---")
t = Test()
t()

  输出

---call---

  

 类装饰器

class Test(object):
    def __init__(self,func):
        self.__func = func
        print("func name is %s"%func.__name__)
    def __call__(self, *args, **kwargs):
        self.__func()
#这里的@Test相当于test = Test(test)
@Test 
def test():
    print("---test---")

test()

  输出

func name is test
---test---

  

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

类中的装饰器在Pycharm中抛出警告

Angular装饰器介绍

python类装饰器详解

Python学习笔记012——装饰器

类装饰器

TypeScript装饰器