numpy.frompyfunc#
- numpy.frompyfunc(func, /, nin, nout, *[, identity])#
接受任意 Python 函数并返回一个 NumPy ufunc。
可用于,例如,为内置 Python 函数添加广播(参见示例部分)。
- 参数:
- funcPython 函数对象
任意 Python 函数。
- ninint
输入参数的数量。
- noutint
由 func 返回的对象数量。
- identityobject, optional
用于生成对象的
identity属性的值。如果指定,这等同于将底层 Cidentity字段设置为PyUFunc_IdentityValue。如果省略,则 identity 设置为PyUFunc_None。请注意,这 _不_ 等同于将 identity 设置为None,后者表示操作是可重排的。
- 返回:
- outufunc
返回一个 NumPy 通用函数(
ufunc)对象。
另请参阅
vectorize根据 numpy 的广播规则对输入数组评估 pyfunc。
备注
返回的 ufunc 始终返回 PyObject 数组。
示例
使用 frompyfunc 为 Python 函数
oct添加广播>>> import numpy as np >>> oct_array = np.frompyfunc(oct, 1, 1) >>> oct_array(np.array((10, 30, 100))) array(['0o12', '0o36', '0o144'], dtype=object) >>> np.array((oct(10), oct(30), oct(100))) # for comparison array(['0o12', '0o36', '0o144'], dtype='<U5')