In [1]: import numpy as np
In [2]: A = np.array([[2, 2],[2, 2]])
In [3]: np.square(A)
Out[3]:
array([[4, 4],
[4, 4]])
In [4]: A ** 2
Out[4]:
array([[4, 4],
[4, 4]])
In [2]: import numpy as np
In [3]: A = np.array([[2, 2],[2, 2]])
In [7]: %timeit np.square(A)
1000000 loops, best of 3: 923 ns per loop
In [8]: %timeit A ** 2
1000000 loops, best of 3: 668 ns per loop
你可以检查一下执行时间,弄清楚情况
对于大多数设备,两者都会给您相同的结果。 一般来说,标准的pythonic
a*a
或a**2
比numpy.square()
或numpy.pow()
快,但是numpy
函数通常更灵活和精确。 如果您进行的计算需要非常精确,请坚持使用numpy
,甚至可能使用其他数据类型float96
。对于正常使用,
a**2
会做得很好,而且比numpy
快得多。 在this thread里的人给了类似问题一些很好的例子。相关问题 更多 >
编程相关推荐