from math import pow
x = -0.0806
power_number = 0.0806
rezultat = pow(float(x), float(power_number))
然后它抛出值错误:数学域错误! 为什么它会抛出错误,我知道当负数被提升到分数次幂,分母是偶数时,它会抛出错误,因为它是虚数。当我把这个例子中的x改为正时,它会输出有效的结果,但为什么会抛出错误呢?有人可以从数学的角度解释一下。为什么我不能将负十进制数提升为十进制数?(顺便说一句,它们都是相同的x和幂数只有x是负数)
我猜这只是python认为只有一种方法可以进行幂运算,所以我可能只是通过使x为正然后将结果切换回负来欺骗它。 但如果有其他方法,它会有所帮助
当我从图片中输入x和power_数时,手持计算器给出了有效的输出,并且没有抛出数学错误
发件人:negative pow in python
将负数提升为浮点幂将是一个复数。为了说明这一点,您可以将0j添加到指数中,让python知道您想要一个复杂的函数,然后只取实际的部分
下面的代码应该是您想要的
相关问题 更多 >
编程相关推荐