numpy.ufunc.signature

属性

ufunc.signature

通用UFUNC操作的核心元素的定义。

签名决定如何将每个输入/输出数组的维度拆分为核心维度和循环维度:

  1. 签名中的每个维度都与相应传入数组的维度匹配,从形状元组的结尾开始。

  2. 分配给签名中相同标签的核心维度必须具有完全匹配的大小,不执行广播。

  3. 核心维度从所有输入中移除,其余维度一起广播,定义循环维度。

笔记

在许多linalg函数和测试套件中,内部使用了通用的ufuncs;下面的示例取自这些函数。对于在标量上操作的ufunc,签名为None,这相当于每个参数的“()”。

实例

>>> np.core.umath_tests.matrix_multiply.signature
'(m,n),(n,p)->(m,p)'
>>> np.linalg._umath_linalg.det.signature
'(m,m)->()'
>>> np.add.signature is None
True  # equivalent to '(),()->()'