Python 3:修改了yahtzee / 3种,4种,5种或者什么都没有

时间:2017-10-14 17:09:42

标签: python-3.5

我在Python 3中编写了一个名为“骰子”的修改过的Yahtzee游戏'用户只有在掷出3,4或5种类型时才会获胜。我正在使用骰子滚动列表,但我无法比较随机列表值,现在它甚至不想工作。请帮忙!

    import time
    import os
    import random

    number_of_dice = 5

    rolls = []

    def dice_roll():
        os.system("clear")
        print("Welcome to 5 Dice!")
        raw_input("Press ENTER to roll")
        for q in range(number_of_dice):
            rolls.append(random.int(1,6))
        rolls.sort()
        time.sleep(1)
        print(*rolls)

        if rolls[0] == rolls[2]:
            print("You rolled a three of a kind!")
            try_again()
        if rolls[0] == rolls[3]:
            print("You rolled a four of a kind!")
            try_again()
        if rolls[0] == rolls[4]:
            print("You rolled a five of a kind!")
            try_again()

def try_again():
    choice = input("Would you like to play again? Y/N: ")
    if choice == "Y" or choice == "y":
        dice_roll()
    if choice == "N" or choice == "n":
        quit()
    else:
        print("Please type Y or N")

1 个答案:

答案 0 :(得分:0)

我目前可以看到您的代码有两个问题: 1。 首先,由于某种原因,您的代码在开始时会缩进。这会导致缩进错误,这可能是程序甚至无法运行的原因。如果在开始时将所有代码向后移动,它应该可以工作。 2。 比较骰子时,您说:if rolls [0] == rolls [2]。这并不意味着三个相同,因为您只比较两个骰子!应该更像是:if rolls [0] == rolls [1] == rolls [2]。如果您更改此设置,则您的游戏应该可以运行。 我希望这会有所帮助。