math.ceil(0.5) 返回与 math.ceil(1/2) 不同的值
math.ceil(0.5) returning different value from math.ceil(1/2)
import math
print(math.ceil(0.5))
Returns
1.0
但是
import math
print(math.ceil(1/2))
Returns
0.0
这是怎么回事?解释会很好。
您似乎正在 运行使用 python 2.x 来使用您需要强制转换为显式浮动的代码:
import math
print(math.ceil(0.5))
print(math.ceil(float(1) / float(2)))
如果你 运行 python 3.x 你将不需要明确地进行转换,你会得到相同的输出:
import math
print(math.ceil(0.5))
print(math.ceil(1 / 2))
import math
print(math.ceil(1/float(2)))
import math
print(math.ceil(0.5))
Returns
1.0
但是
import math
print(math.ceil(1/2))
Returns
0.0
这是怎么回事?解释会很好。
您似乎正在 运行使用 python 2.x 来使用您需要强制转换为显式浮动的代码:
import math
print(math.ceil(0.5))
print(math.ceil(float(1) / float(2)))
如果你 运行 python 3.x 你将不需要明确地进行转换,你会得到相同的输出:
import math
print(math.ceil(0.5))
print(math.ceil(1 / 2))
import math
print(math.ceil(1/float(2)))