Python岩石剪刀保持得分的蜥蜴Spock

时间:2014-07-25 21:58:10

标签: python

以下是代码:

import random

numberofgames = raw_input("How many games do you want to play?")

print "Please choose rock , paper , scissors , lizard, or spock (in lower case please)"
choice = raw_input("What do you choose? ")
player_choice = str(choice)
def name_to_number(name):
    if name == "rock":
        name = 0
        return name
    elif name == "spock":
        name = 1
        return name
    elif name == "paper":
        name = 2
        return name
    elif name == "lizard":
        name = 3
        return name
    elif name == "scissors":
        name = 4
        return name

def number_to_name(number):
    if number == 0:
        number = "rock"
        return number
    elif number == 1:
        number = "spock"
        return number
    elif number == 2:
        number = "paper"
        return number
    elif number == 3:
        number = "lizard"
        return number
    elif number == 4:
        number = "scissors"
        return number

try:
    computer_choice = random.randrange(5)
    player_number = name_to_number(player_choice)
    print "Player choice is: " + player_choice
    print "Computer choice is: " + number_to_name(computer_choice)
    difference = (int(player_number) - computer_choice) % 5
    draws = 0
    playerwins = 0
    computerwins = 0
    if difference in [1, 2]:
        print "Player wins!"
        playerwins = playerwins + 1
    elif difference == 0:
        print "Player and computer tie!"
        draws = draws + 1
    else:
        print "Computer wins!"
        computerwins = computerwins + 1

    print "Wins: " + str(playerwins) + "\n" + "Draws: " + str(draws) + "\n" + "Losses " + str(computerwins)

    while playerwins + draws + computerwins <= numberofgames:
        main()

except TypeError:
    print "Sorry, please read the directions and type rock, paper, scissors, spock, or lizard in lowercase."

问题是它会说得分是1-0-0,然后接下来说0-1-0获胜 - 抽奖。我希望它能够添加分数,并且只按照用户的要求继续进行一定数量的游戏。 例如,如果是4场比赛,得分可能是2-1-1。

0 个答案:

没有答案