我有一个利用 Python 函数的一流特性定义的函数,如下所示:
add_relative = np.frompyfunc(lambda a, b: (1 + a) * (1 + b) - 1, 2, 1)
要么我需要一种将文档字符串添加到按原样定义的函数的方法,要么使用更常见的格式实现相同的目的,以便我可以以正常方式编写文档字符串:
def add_relative(a, b):
"""
Docstring
"""
return np.frompyfunc(lambda a, b: (1 + a) * (1 + b) - 1, 2, 1)(a, b)
当函数被调用时起作用
add_relative(arr1, arr2)
但是我随后失去了调用方法的能力,例如
add_relative.accumulate(foo_arr, dtype=np.object)
我猜这是因为函数在使用时变得更像一个类frompyfunc
,从ufunc
.
我想我可能需要定义一个类,而不是一个函数,但我不确定如何。我会同意的,因为这样我就可以像往常一样轻松添加文档字符串。
我标记了这个coding-style
,因为原始方法有效,但不能轻易记录,如果标题不清楚,我很抱歉,我不知道描述这个的正确词汇。