我想得到一个子类的类

2024-10-02 14:30:44 发布

您现在位置:Python中文网/ 问答频道 /正文

在一个要被子类化的类中,我能为它的子类的实例获取类变量吗?像这样:

class A:
    ...
    def doStuff(self):
        c = getChildClass(self)
        setattr(c, 'anAttribute', value)

有一些有趣的备忘录,我想做的,这将使任务更容易。你知道吗


Tags: 实例selfvaluedef子类备忘录class被子
2条回答
In [1]: class A(object):
   ...:     def doStuff(self):
   ...:         c = self.__class__
   ...:         print c, c.__name__
   ...:         setattr(c, 'moo', 'meow')

In [2]: class B(A):
   ...:     pass
   ...:

In [3]: B().doStuff()
<class '__main__.B'> B

In [4]: B.moo
Out[4]: 'meow'

所以,self.__class__就是你需要的。你知道吗

如果您指的是实例本身的类,请使用self.__class__。你知道吗

相关问题 更多 >