Python学习Day14——体育竞技实例

import random
def printInfo():
    print("这个程序模拟两个选手的某个竞赛结果")
    print("程序运行需要A和B的能力值(以0-1)之间的小数表示")
def getInputs():
    a=eval(input("请输入选手A的能力值(0-1之间):"))
    b = eval(input("请输入选手B的能力值(0-1之间):"))
    n=eval(input("模拟比赛的场次:"))
    return a,b,n
def printSummary(winsA,winsB):
    n=winsA+winsB
    print("竞技分析开始,共模拟{}场比赛".format(n))
    print("选手A获胜{}场比赛,占比{:0.1%}".format(winsA,winsA/n))
    print("选手B获胜{}场比赛,占比{:0.1%}".format(winsB, winsB / n))
def gameOver(a,b):
    return a==15 or b==15
def simOneGame(proA,proB):
    scoreA,scoreB=0,0
    serving="A"
    while not gameOver(scoreA,scoreB):
        if serving=="A":
            if random.random()scoreB:
            winsA+=1
        else:
            winsB=+1
    return winsA,winsB
def main():
    printInfo()
    proA,proB,n=getInputs()
    winsA,winsB=simNGame(n,proA,proB)
    printSummary(winsA,winsB)
main()

你可能感兴趣的:(Python学习Day14——体育竞技实例)