为numpy函数创建别名

时间:2017-10-20 16:53:12

标签: python python-3.x numpy

a=np.squarepow(x,2)

创建别名

同样,我想为pow(x,3)函数

创建一个别名
a = np.power(x2=3)

似乎不起作用

任何解决方法?

1 个答案:

答案 0 :(得分:2)

您正在寻找部分应用,这与别名不同。因此,最直接的方法是定义一个函数:

>>> import math
>>> math.pow(3, 2)
9.0
>>> def three_to_the(n): return math.pow(3, n)
...
>>> three_to_the(2)
9.0
>>>

functools中还有一个便利功能:

>>> from functools import partial
>>> power_three = partial(math.pow, 3)
>>> power_three(2)
9.0
>>> power_three(3)
27.0

注意,np.square 不是 np.power(x, 2)的别名,它们只是等效地行动,但别名只是具有不同功能的完全相同的功能(或任何对象)名。