如何在python中进行浮点计算?
for j in range(10 , 50):
print "(10/(j+1)) is %f " % (10/(j+1))
为什么输出都是0?
j必须是整数,但我需要浮动结果。
感谢
答案 0 :(得分:7)
在Python2中,/
会将两个整数的商截断为整数,
你可以做到
for j in range(10 , 50):
print "(10/(j+1)) is %f " % (10.0/(j+1))
或不全局截断,就像Python3一样
from __future__ import division
for j in range(10 , 50):
print "(10/(j+1)) is %f " % (10/(j+1))
答案 1 :(得分:1)
尝试10.0而不是10.python将10解释为整数类型,并且作为结果的除法是整数除法。您也可以手动将10或(j + 1)转换为double类型,但10.0对我来说似乎最简单。