class A: def __init_subclass__(cls, **kwargs): super().__init_subclass__(**kwargs) cls.registry = True class B(A): pass class C(B): pass print(hasattr(A, 'registry'), hasattr(B, 'registry'), hasattr(C, 'registry'))
class A: def __init_subclass__(cls, **kwargs): super().__init_subclass__(**kwargs) cls.registry = True class B(A): pass class C(B): pass print(hasattr(A, 'registry'), hasattr(B, 'registry'), hasattr(C, 'registry'))
False True True
True True True
False True False
False False True