Как наследовать атрибут метода [python]
Я пытаюсь передать некоторые атрибуты из метода в родительском классе в метод в дочернем классе. И после этого я хочу использовать декоратор, который использует этот атрибут.
Предположим, у меня есть два класса и такой декоратор:
def my_decorator(fun):
inner(*args, **kwargs):
if fun.some_attr == 'value':
out = fun(*args, **kwargs)
else:
out = None
return out
return inner
class A:
def some_method_in_A(self):
return 1
some_method_in_A.some_attr = 'value'
class B(A):
@my_decorator
def some_method_in_B(self):
super(B, self).some_method_in_A()
Я хочу, чтобы some_attr был установлен в 'value'
в some_method_in_B. Этот атрибут должен быть доступен для my_decorator
, Возможно ли это сделать?
Это то, что я должен был бы сделать для многих методов в классе B, поэтому было бы неплохо сделать это компактным способом.