Я обнаружил, что определяю ряд функций-оболочек, главным образом, чтобы избежать изменения функций, которые приходят из пакетов (как стандартных, так и собственных).Мне бы хотелось, чтобы интерпретатор понимал оболочку как имеющую те же аргументы, что и функции, которые он упаковывает.Например, у меня есть функция обтекания
def wrapped(opt=1):
DoSomethingWithTheParameters(opt)
, которую я сейчас обертываю оберткой на основе словаря
def wrapper(kwargs):
return wrapped(**kwargs)
Но это имеет недостатки:
- Список аргументов
wrapper
неизвестен интерпретатору - Оболочка
docstring
пуста и будет хорошо, если ее можно унаследовать от функции-оболочки
В любом случае, я могу программно определить оболочки, чтобы они получали тот же список аргументов, что и функции, которые они оборачивают?есть ли шанс, что они также получат одну и ту же строку документации?