0

我目前正在学习 Python 3,到目前为止它已经顺利进行。这个简单的掷骰子的目标是接受用户输入,是/否,然后掷骰子。如果不满足是/否,则告诉他们他们的答案无效并继续重新提问。

一切都很好,除了我无法弄清楚如何同时接受“是”和“y”或“否”和“n”作为答案。如果我添加一个 or (answery = "yes" or "y"),脚本将出于某种原因将任何答案视为掷骰子。制作列表也是如此,有多个变量 (answery1 = "yes" answery2 = "y"),添加逗号 (answery = ("yes," "y") 等。任何帮助将不胜感激。

from random import randint


def reroll():
    answer = input("Would you like to roll the die again? Yes/No \n")
    answer = answer.lower()
    answery = "yes"
    answern = "no"

    if answer == answery:
         print(randint(0, 6))
         reroll()

    elif answer == answern:
        print("Thanks for rolling!")

    else:
        print("That's not an option.")
        reroll()


def roll():
    answer = input("Would you like to roll the die? Yes/No \n")
    answer = answer.lower()
    answery = "yes"
    answern = "no"

    if answer == answery:
         print(randint(0, 6))
         reroll()

    elif answer == answern:
        print("Thanks for rolling!")

    else:
        print("That's not an option.")
        roll()

roll()
4

0 回答 0