【发布时间】:2020-04-21 02:06:35
【问题描述】:
对于一些奇怪的覆盖检查,我正在寻找一种方法来获取排除父类方法的对象方法列表。因此,鉴于此:
class Parent:
def __init__(self):
pass
def papa(self):
pass
def mama(self):
pass
class Son(Parent):
def __init__(self):
pass
def papa(self):
pass
def child(self):
pass
我想要一个函数list_subclass_methods(cls,is_narrow),它接收类符号并返回:
['child']
如果提供了标志is_narrow=True,或者
['__init__','papa','child']
如果is_narrow=False
多重继承可能是个问题——所以在多父的情况下,我们比较父方法的联合
感谢您的帮助!
【问题讨论】:
-
虽然指定的帖子类似,但该帖子仅与方法相关。感谢您的评论@Tomerikoo
-
@Mano 您只对方法感兴趣这一事实并不会使 Tomerikoo 链接的帖子太不相关 - 您只需过滤掉非方法属性。
标签: python inheritance methods