Скажем, мы имеем следующую ситуацию,Как применить декоратор к методу суперкласса в подклассе?
class A():
def something():
...
...
...
class B(A):
def use_something():
...
...
# Now, at this point I want something() to be decorated with a
# decorator. But, since it is already defined in base class,
# I am not getting how to decorate it here, in the subclass.
self.something()
...
...
Теперь, в классе В, я хочу использовать что-то() из класса А, но я хочу, чтобы применить декоратор к нему. Я не могу украсить его в классе A, так как есть разные декораторы, которые я хочу применять в разных местах. Скажем, класс C (A), и я хочу использовать что-то() здесь, а также с другим декоратором.
Итак, вернемся к исходному вопросу; как я могу применить декоратор к методу суперкласса в подклассе?
Зачем вам нужно «нанести декоратор» вместо того, чтобы просто обернуть вызов 'A.method()' с кодом подкласса, который делает то, что сделает декоратор? Пожалуйста, покажите пример того, что вы надеетесь сделать. – BrenBarn
@BrenBarn Можете ли вы, пожалуйста, пролить свет на «обертывание метода» или, пожалуйста, направить меня к нему, так как я новичок в этих понятиях. –
Нет, я не могу, пока вы не покажете пример того, что вы хотите, чтобы этот гипотетический код делал. Это нормально, потому что это «поддельный» код (т. Е. Код, который на самом деле не работает). Но вам нужно показать конкретный пример того, чего вы надеетесь достичь. – BrenBarn