-6

每场比赛(比赛A和比赛B)都是随机的,每场比赛都有与玩家叠加的赔率,每次玩任何一场比赛,如果你赢了,你赢了1美元,如果你输了,你输了1美元。我想生成一个从 0 到 1 的随机数,如果这个数字小于 0.4 我输了,如果它更大我赢了。这是代码,但它给了我一个错误,你能帮我吗?问题是:玩这个游戏我损失了多少钱?

import random
def testA():
    # game A
    gameA = random.random()
    if gameA>0.4   #error
    profitA=profitA+1
    end
    return profitA
def testB():    
    #game B    
    gameB = random.random()
    if gameB>0.4
    profitA=profitA+1
    end
    return profitB
def runTests(repititions):
    sumA = 0
    sumB = 0
    for i in range(repititions):
        profitA = testA()
        profitB = testB()
        sumA += profitA
        sumB += profitB

    return sumA, sumB
repititions = int(raw_input("Repititions: "))
sumA, sumB = runTests(repititions)

print sumA
print sumB
4

1 回答 1

0

您有两个语法错误,一个空格错误,并且您使用的关键字不存在。

if gameA>0.4   #<-- end this with a colon
profitA=profitA+1 #<-- needs more indent
end #<-- what is end?

所有这些都在gameB.

此外:

  • profitAandprofitB没有在testAand中定义testB
  • testA是相同的代码testB,这意味着随着时间的推移,它们将返回大约相同的值。
于 2013-11-02T12:33:23.240 回答