Python 为什么指数运算符会发出浮点舍入错误
尝试使用指数运算符获取-1的平方根时:Python 为什么指数运算符会发出浮点舍入错误,python,complex-numbers,Python,Complex Numbers,尝试使用指数运算符获取-1的平方根时: >>> (-1)**0.5 (6.123233995736766e-17+1j) 为什么我们得到这个不重要的真实部分(仍然不是0)?指数运算符执行哪些操作导致浮点精度错误 我想知道的是**如何近似答案,而不是实际得到正确答案。是0到17位小数,这很好!除非您明确知道某个操作不会产生舍入误差,否则可能会出现舍入误差。请尝试使用cmath的sqrt。让我们确保我们解决了您的实际问题——为什么差异对您很重要?**不知道sqrt(-1)
>>> (-1)**0.5
(6.123233995736766e-17+1j)
为什么我们得到这个不重要的真实部分(仍然不是0)?指数运算符执行哪些操作导致浮点精度错误
我想知道的是**如何近似答案,而不是实际得到正确答案。是0到17位小数,这很好!除非您明确知道某个操作不会产生舍入误差,否则可能会出现舍入误差。请尝试使用cmath的sqrt。让我们确保我们解决了您的实际问题——为什么差异对您很重要?
**
不知道sqrt(-1)==j
;它直接跳到三角函数中,让你计算出任何负数的分数次幂的值。