python 我的 if 语句接受一切

时间:2021-05-16 00:29:31

标签: python-3.x

我正在尝试制作一个简单的石头剪刀布游戏,但我的 if 语句无法运行。目前它接受所有值,但在以前的格式中它不接受任何值。如何让它只接受这三个值而拒绝其他值?

def game():
    
    while True:
        playerVal = str(input("Your turn: "))#player's turn

        if playerVal == ("rock") or ("paper") or ("scissors"):
            print("success")
            compare()
            break
        else :
            print("input a correct value")
   
game()

1 个答案:

答案 0 :(得分:0)

这应该有效:

if playerVal == ("rock") or playerVal == ("paper") or playerVal == ("scissors"):

你也可以去掉这些括号,我想这样更干净:

if playerVal == "rock" or playerVal == "paper" or playerVal == "scissors":

或者 - 在我看来 - 最好的方法:

if playerVal in ("rock", "paper", "scissors"):

相关问题