Маринованные обернутые частичные функции
Я пытаюсь создать разборный декоратор, используя частичные функции. Тем не менее, я продолжаю получать ошибки травления при попытке сделать это.
Первый наивныйНаш пример выглядит следующим образом:
def decorator(func):
def wrapper(**kwargs):
return partial(func, **kwargs)
return wrapper
@decorator
def decorated(x, y=1, z=2):
return x+y+z
y5 = decorated(y=5)
pickle.dumps(y5)
кудаpartial
взято из.functools
Немного менее наивныйМы пытаемся добавить@wraps
на одну строку вышеdef wrapper
, Это нея помогу
Я не уверен, что понимаю, как работает травление.