numpy.emath.sqrt#

emath.sqrt(x)[源代码]#

计算 x 的平方根.

对于负输入元素,返回一个复数值(与 numpy.sqrt 不同,后者返回 NaN).

参数:
xarray_like

输入值.

返回:
outndarray 或标量

x 的平方根.如果 x 是一个标量,那么 out 也是一个标量,否则返回一个数组.

参见

numpy.sqrt

示例

对于真正的非负输入,这就像 numpy.sqrt 一样工作:

>>> import numpy as np
>>> np.emath.sqrt(1)
1.0
>>> np.emath.sqrt([1, 4])
array([1.,  2.])

但它自动处理负输入:

>>> np.emath.sqrt(-1)
1j
>>> np.emath.sqrt([-1,4])
array([0.+1.j, 2.+0.j])

由于以下原因,预期会有不同的结果:浮点数 0.0 和 -0.0 是不同的.

为了更精确的控制,明确地使用 complex() 如下:

>>> np.emath.sqrt(complex(-4.0, 0.0))
2j
>>> np.emath.sqrt(complex(-4.0, -0.0))
-2j