【发布时间】:2013-07-19 21:29:51
【问题描述】:
当我在终端尝试这个时
>>> (-3.66/26.32)**0.2
我收到以下错误
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: negative number cannot be raised to a fractional power
但是,我可以分两步完成此操作,例如,
>>> (-3.66/26.32)
-0.13905775075987842
>>> -0.13905775075987842 ** 0.2
-0.6739676327771593
为什么会有这种行为?单行解决这个问题的方法是什么?
【问题讨论】:
-
@Haidro,是的,我已经看到了这个问题,但我的问题是 (-1.07) ** 1.3 抛出错误,但 -1.07 ** 1.3 没有抛出错误,为什么?
-
我认为这与复数有关。负 1 的平方根(分数幂)是 i。当它认为它正在进入复数领域时,它就会打包。
标签: python