And*_*ndz 27 python reflection superclass
class p1(object): pass
class p2(p1): pass
Run Code Online (Sandbox Code Playgroud)
所以p2是p1的子类.有没有办法以编程方式找出p1是[p2]的超类[es]之一?
小智 43
使用<class> .__ bases__似乎是你正在寻找...
>>> class p1(object): pass
>>> class p2(p1): pass
>>> p2.__bases__
(<class '__main__.p1'>,)
Run Code Online (Sandbox Code Playgroud)
Ser*_*rge 38
是的,有方法.您可以使用issubclass函数.
如下:
class p1(object):pass
class p2(p1):pass
issubclass(p2, p1)
Run Code Online (Sandbox Code Playgroud)