Python:从内部类对象中获取outter类



我有一个如下的设置,其中B是内部类,A是外部类:

class A:
# some A stuff
class B:
# Some B stuff

如果我有一个B实例:

b = B()

如何获得A类?

换句话说,我想要类似type(b)的东西,它通常给出类B,但却得到b的外部类A

编辑

我找到了CCD_ 9,如果用它做CCD_;A.B";。虽然很接近,但我不认为从字符串中可以得到外部类本身。

没有引用"父";类(因为它们只是分配给类对象的名称空间(,除非您手动执行类似的操作

from enum import Enum
class A:
class B(Enum):
X = 1
A.B.parent = A

当然,您可以编写一个类装饰器,它遍历它所装饰的类的所有成员,如果它们是类,则用类似的属性对它们进行注释,从而将您带到

from enum to Enum
@annotate_subclasses  # Implementation elided :)
class A:
class B(Enum):
...

相关内容

  • 没有找到相关文章

最新更新