6. 自定义 ufunc 函数

  1. 可以通过frompyfunc()将计算单个元素的函数转换成ufunc函数。调用格式为:my_ufunc=frompyfunc(func,nin,nout)。其中:

    • func:计算单个元素的函数
    • ninfunc的输入参数的个数
    • noutfunc返回值的个数

    调用时,使用my_ufunc(...)即可。 frompyfunc

  2. 也可以通过vectorize()函数来实现frompyfunc()的功能。其原型为: np.vectorize(func, otypes='', doc=None, excluded=None)。其中:

    • func:计算单个元素的函数
    • otypes:可以是一个表示结果数组元素类型的字符串,也可以是一个类型列表。如果使用类型列表,可以描述多个返回数组的元素类型
    • doc:函数的描述字符串。若未给定,则使用func.__doc__
    • excluded:指定func中哪些参数未被向量化。你可以指定一个字符串和整数的集合,其中字符串代表关键字参数,整数代表位置参数。

    vectorize