如果我将其中一个中间步骤分配给变量,Python会给我不同的结果,就像这样:
>>> -0.207 ** 0.66 - 1
-1.3536229379434348
>>> a = -0.207
>>> a ** 0.66 - 1
(-1.1703591496008927+0.30988214273656856j)
对于这个简单的计算,如果我将
-0.207
赋值给一个临时变量a
,那么a ** 0.66 - 1
的结果会被计算为一个复数。为什么会发生这种情况,我该如何阻止Python这样做?