计算百分比会返回不正确的结果

时间:2017-05-31 23:34:19

标签: python percentage

我正在用coinflips创建一个游戏。当所有100个硬币完成翻转时,我想计算百分比。但是,下面提供的代码将显示" hp"或" tp"虽然它显然不是100%,但仍为100。

import random

flips=100
heads=0
tails=0

while flips!=0:

    coinflip=random.randint(0,1)

    if coinflip==0:
        heads+=1
    elif coinflip==1:
        tails+=1     
    flips-=1

print "Heads - "+str(heads)
print "Tails - "+str(tails)
print "-----------"
hp=float((tails/heads)*100)
tp=float((heads/tails)*100)

我可能是python处理事物的方式?或者我可能只是愚蠢而且不能做数学。

1 个答案:

答案 0 :(得分:2)

python2中的分区默认不是浮点。

在代码的开头添加导入

from __future__ import division

这采用了Python3的行为

Previous Answer