【发布时间】:2018-08-01 04:21:18
【问题描述】:
以下已编辑的原始问题。
正如 @MiH 所指出的,这个问题与Get subclass name? 几乎相同
有没有办法获取对象的实际/运行时类的名称,而不是定义方法的类的名称?
我在派生类对象上调用基类方法(此类对象不会覆盖该方法),o.__class__.__name__ 给了我基类的类的名称,而不是运行时类的名称。
显然我想避免在每个派生类中定义一个方法只是为了获取它的类名,问题的目的是知道是否有办法避免这种情况。
【问题讨论】:
-
我不确定我是否在关注……方法在哪里?如果您有一个对象
o- 那么大概就是您想要的对象类型,就是这样? -
所以你说
o是DerivedClass类型,而o.__class__.__name__是BaseClass?我不认为这是可能的。给我们看一些代码。 -
@MiH 你是对的,事实上它是重复的
标签: python python-3.x class inheritance introspection