可能重复:
Python float 到 int 的转换问题
def isPerfectCube(x):
temp = x ** (float(1) / 3)
temp = temp ** 3
temp = int(temp)
print (temp == x)
return (temp == x)
我正在尝试编写一个程序来确定数字 x 是否是完美的立方体。出于某种原因,一些数字一直在舍入一个整数,而不仅仅是截断。我从来没有完全理解花车是如何工作的。我知道他们不准确,所以我假设问题来自那里。
例如:
- 125.0 在转换为 int 时截断为 124。
- 当转换为 int 时,64.0 截断为 63。
任何帮助或解释将不胜感激。