from numpy import log as ln
z = 3
k = 2
x = 1 - ln(1 + z) / ln(1 + k)
y = 1/5
print("The x=", x)
Q = x**y
print(Q)
结果是
The x= -0.26185950714291484
c:\Users\-\Desktop\... RuntimeWarning: invalid value
encountered in double_scalars
Q = x**y
nan
我很难理解这里的问题。很明显,我可以打印
x
,但我无法使用它。
同时,当我将代码编写为
x = -0.26185950714291484
y = 1/5
print("The x=", x)
Q = x**y
print(Q)
我明白了
The x= -0.26185950714291484
(0.6188299348758349+0.44960626529008196j)
我真的很震惊。我无法理解发生了什么。如果我只是手动输入数字,我可以计算结果。但是如果我用计算方法来做,我会得到一个错误???