如何以编程方式定义与它们包装的函数具有相同(可选)参数的python包装器函数

时间:2019-06-13 14:34:54

标签: python arguments parameter-passing docstring

我发现自己定义了许多包装函数,主要是为了避免修改来自软件包的函数(标准为numpy或我自己的)。我希望解释器将包装器理解为与包装的函数具有相同的参数。例如,我有一个包装功能

def wrapped(opt=1):
     DoSomethingWithTheParameters(opt)

我目前使用基于字典的包装器包装

def wrapper(kwargs):
    return wrapped(**kwargs)

但这有缺点:

  1. 解释器不知道wrapper的参数列表
  2. 包装器的docstring为空,如果可以从包装的函数中继承它,那就很好了

以任何方式我都可以通过编程方式定义包装器,以便它们获得与包装器函数相同的参数列表?他们是否也有可能获得相同的文档字符串?

0 个答案:

没有答案