У меня есть иерархия OO с docstrings, которые занимают столько же обслуживания, сколько и сам код. Например.
class Swallow(object):
    def airspeed(self):
        """Returns the airspeed (unladen)"""
        raise NotImplementedError
class AfricanSwallow(Swallow):
    def airspeed(self):
        # whatever
Теперь проблема заключается в том, что AfricanSwallow.airspeed не наследует метод docstring метода суперкласса. Я знаю, что могу сохранить docstring с помощью шаблона метода шаблона, т.е.
class Swallow(object):
    def airspeed(self):
        """Returns the airspeed (unladen)"""
        return self._ask_arthur()
и реализации _ask_arthur в каждом подклассе. Тем не менее, мне было интересно, есть ли другой способ унаследовать docstrings, возможно, какой-то декоратор, которого я еще не обнаружил?