У меня есть класс, который я не могу изменить (он взят из библиотеки), который может выглядеть как
class Test(object):
def __init__(self):
pass
def bar(self, x):
return x
И я хочу добавить декоратор к методу bar
в Test
, как, например, следующее:
from functools import wraps
def some_decorator(fn):
@wraps(fn)
def wrapped(*args, **kwargs):
return "<b>" + fn(*args, **kwargs) + "</b>"
return wrapped
Под «добавлением» декоратора я подразумеваю способ создания объектов, для которых метод bar
заключен в some_decorator
.
Однако я не могу изменить код в Test
, что усложняет мою проблему. Есть ли простой способ добавить декоратор в метод из класса, который я не могу изменить в python?