8.python之面相对象part.8(类装饰器)

Posted

tags:

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

下面是一个对类使用装饰器的一个示例,主要目的就是给一个定义好的类通过装饰器的形式去临时增加属性或者方法。

def add_property(**kwargs):

    def deco(obj):

        for key,value in kwargs.items():

            setattr(obj,key,value)

        return obj

    return deco

@ add_property(a=1,b=2,c=3)

class test:

    pass

t1 = test()

print test.a

print test.b

print test.c


输出:

1

2

3


这个装饰器不止可以用在类中也可以用在对象上面。


本文出自 “reBiRTH” 博客,请务必保留此出处http://suhaozhi.blog.51cto.com/7272298/1919350

以上是关于8.python之面相对象part.8(类装饰器)的主要内容,如果未能解决你的问题,请参考以下文章

补8.python之面相对象part.7(类相关函数的补充)

8.python之面相对象part.1(初识类与对象)

8.python之面相对象part.2(特殊属性,类方法,静态方法)

补8.python之面相对象part.6(补充授权与继承的概念)

8.python之面相对象part.4(接口继承的思想设计,这种东西也叫抽象类)

8.python之面相对象part.6(python类中的多态与多态性)