Class Decorators, Inheritance, super(), and maximum recursion

前端 未结 5 1810
故里飘歌
故里飘歌 2020-12-31 19:52

I\'m trying to figure out how to use decorators on subclasses that use super(). Since my class decorator creates another subclass a decorated class seems to pre

5条回答
  •  清酒与你
    2020-12-31 20:50

    How about simply promoting _DecoratedClass's __bases__ up to the __bases__ of SubClassAgain?

    def class_decorator(cls):
        class _DecoratedClass(cls):
            def __init__(self):
                return super(_DecoratedClass, self).__init__()
        _DecoratedClass.__bases__=cls.__bases__
        return _DecoratedClass
    

提交回复
热议问题