有没有类似 OldStyleClass.mro() 的东西?
Is there something like OldStyleClass.mro()?
我试图理解旧式的 MRO 类。为 NewStyleClass.mro() (或 NewStyleClass.__mro__)提供等价物会很方便。
是否有类似 OldStyleClass.mro() 的东西?
也许有一种快速简便的模拟方法?
您可以使用旧样式 inspect
模块的资源 类:
class A: # "old" style class
pass
class B(A):
pass
hasattr(B, '__mro__')
# -> False
import inspect
print inspect.getmro(B)
# -> (<class __main__.B at 0x7f1b5ee1b530>, <class __main__.A at 0x7f1b5ee1b4c8>)
我试图理解旧式的 MRO 类。为 NewStyleClass.mro() (或 NewStyleClass.__mro__)提供等价物会很方便。
是否有类似 OldStyleClass.mro() 的东西? 也许有一种快速简便的模拟方法?
您可以使用旧样式 inspect
模块的资源 类:
class A: # "old" style class
pass
class B(A):
pass
hasattr(B, '__mro__')
# -> False
import inspect
print inspect.getmro(B)
# -> (<class __main__.B at 0x7f1b5ee1b530>, <class __main__.A at 0x7f1b5ee1b4c8>)