Python int(“\tRock打碎剪刀”) 打印(“\t剪纸”) 打印(“”) #单人模式 def onePlayer(): 再次=“” player=False 打印(“\n\t图层与计算机”) 当player==False时: player=输入(“\n选择您的武器:石头、布或剪刀\n”) player=player.lower() #计算机=武器[randint(0,2)] #暂时的 计算机=“纸张” computer=computer.lower() 如果播放器==计算机: 打印(播放器,“vs”,计算机) 打印(“这是一条领带!\n”) elif player==“摇滚乐”: 如果计算机==“纸张”: 打印(播放器,“vs”,计算机) 打印(“纸盖石头!你输了!\n”) 其他: 打印(“岩石粉碎”,计算机,“.youwin!\n”) elif播放器==“纸张”: 如果计算机==“剪刀”: 打印(播放器,“vs”,计算机) 打印(“剪刀剪纸!你输了!\n”) 其他: 打印(“纸质封面”,电脑“.youwin!\n”) elif player==“剪刀”: 如果计算机==“岩石”: 打印(播放器,“vs”,计算机) 打印(“石头砸剪刀!你输了!\n”) 其他: 打印(“剪刀剪”,电脑,“.你赢了!\n”) 其他: 打印(“无效输入”) 再次=输入(“您想再次播放吗?是或否\n”) 再次=再次 如果再次==“是”或再次==“y”: player=False 其他: player=True main() main()

Python int(“\tRock打碎剪刀”) 打印(“\t剪纸”) 打印(“”) #单人模式 def onePlayer(): 再次=“” player=False 打印(“\n\t图层与计算机”) 当player==False时: player=输入(“\n选择您的武器:石头、布或剪刀\n”) player=player.lower() #计算机=武器[randint(0,2)] #暂时的 计算机=“纸张” computer=computer.lower() 如果播放器==计算机: 打印(播放器,“vs”,计算机) 打印(“这是一条领带!\n”) elif player==“摇滚乐”: 如果计算机==“纸张”: 打印(播放器,“vs”,计算机) 打印(“纸盖石头!你输了!\n”) 其他: 打印(“岩石粉碎”,计算机,“.youwin!\n”) elif播放器==“纸张”: 如果计算机==“剪刀”: 打印(播放器,“vs”,计算机) 打印(“剪刀剪纸!你输了!\n”) 其他: 打印(“纸质封面”,电脑“.youwin!\n”) elif player==“剪刀”: 如果计算机==“岩石”: 打印(播放器,“vs”,计算机) 打印(“石头砸剪刀!你输了!\n”) 其他: 打印(“剪刀剪”,电脑,“.你赢了!\n”) 其他: 打印(“无效输入”) 再次=输入(“您想再次播放吗?是或否\n”) 再次=再次 如果再次==“是”或再次==“y”: player=False 其他: player=True main() main(),python,menu,Python,Menu,您正在为两个作品使用player变量,而不是使用另一个变量来检查条件,使用另一个变量来获取用户输入 您还可以检查如下条件:如果在[“是”,“y”] def main(): menuSelect = "" print("\tRock, Paper, Scissors!") # main menu print("\n\t\tMain Menu") print("\t1. See the rules") print("\t2. Play against the

您正在为两个作品使用
player
变量,而不是使用另一个变量来检查条件,使用另一个变量来获取用户输入

您还可以检查如下条件:
如果在[“是”,“y”]

def main():
    menuSelect = ""
    print("\tRock, Paper, Scissors!")

# main menu
    print("\n\t\tMain Menu")
    print("\t1. See the rules")
    print("\t2. Play against the computer")
    print("\t3. Play a two player game")
    print("\t4. Quit")

    menuSelect = int(input("\nPlease select one of the four options "))

    while menuSelect < 1 or menuSelect > 4:
        print("The selection provided is invalid.")
        menuSelect = int(input("\nPlease select one of the four options "))

    if menuSelect == 1:
        rules()
    elif menuSelect == 2:
        onePlayer()
    elif menuSelect == 3:
        twoPlayer()
    elif menuSelect == 4:
        endGame()

# display the rules to the user
def rules():

    print("\n\t\tRules")
    print("\tThe game is simple:")
    print("\tPaper Covers Rock")
    print("\tRock Smashes Scissors")
    print("\tScissors Cut Paper")
    print("")

# one player mode
def onePlayer():
    again = ""
    player = False

    print("\n\tPlayer VS Computer")

    while player == False:
        player = input("\nSelect your weapon: Rock, Paper, or Scissors\n")
        player = player.lower()

        #computer = WEAPON[randint(0,2)]
        #temporary
        computer = "paper"
        computer = computer.lower()

        if player == computer:
            print(player," vs ",computer)
            print("It's a tie!\n")
        elif player == "rock":
            if computer == "paper":
                print(player," vs ",computer)
                print("Paper covers rock! You lose!\n")
            else:
                print("Rock smashes",computer,". You win!\n")     
        elif player == "paper":
            if computer == "scissors":
                print(player," vs ",computer)
                print("Scissors cut paper! You lose!\n")
            else:
                print("Paper covers",computer,". You win!\n")
        elif player == "scissors":
            if computer == "rock":
                print(player," vs ",computer)
                print("Rock smashes scissors! You lose!\n")
            else:
                print("Scissors cut",computer,". You win!\n")
        else:
            print("invalid input")

        again = input("Would you like to play again? Yes or no\n")
        again = again.lower()

        if again=="yes" or again=="y":
            player = False
        else:
            player = True
            main()


main()
def main():
menuSelect=“”
打印(“\tRock,纸,剪刀!”)
#主菜单
打印(“\n\t\t主菜单”)
打印(“\t1.参见规则”)
打印(“\t2.对计算机播放”)
打印(“\t3.玩两人游戏”)
打印(“\t4.退出”)
menuSelect=int(输入(“\n请从四个选项中选择一个”))
当menuSelect<1或menuSelect>4时:
打印(“提供的选择无效。”)
menuSelect=int(输入(“\n请从四个选项中选择一个”))
如果menuSelect==1:
规则()
elif menuSelect==2:
onePlayer()
elif menuSelect==3:
两人()
elif menuSelect==4:
终局
#向用户显示规则
定义规则():
打印(“\n\t\tRules”)
打印(“\t游戏很简单:”)
打印(“\t每页覆盖岩石”)
打印(“\tRock打碎剪刀”)
打印(“\t剪纸”)
打印(“”)
#单人模式
def onePlayer():
再次=“”
player=False
打印(“\n\t图层与计算机”)
当player==False时:
player=输入(“\n选择您的武器:石头、布或剪刀\n”)
player=player.lower()
#计算机=武器[randint(0,2)]
#暂时的
计算机=“纸张”
computer=computer.lower()
如果播放器==计算机:
打印(播放器,“vs”,计算机)
打印(“这是一条领带!\n”)
elif player==“摇滚乐”:
如果计算机==“纸张”:
打印(播放器,“vs”,计算机)
打印(“纸盖石头!你输了!\n”)
其他:
打印(“岩石粉碎”,计算机,“.youwin!\n”)
elif播放器==“纸张”:
如果计算机==“剪刀”:
打印(播放器,“vs”,计算机)
打印(“剪刀剪纸!你输了!\n”)
其他:
打印(“纸质封面”,电脑“.youwin!\n”)
elif player==“剪刀”:
如果计算机==“岩石”:
打印(播放器,“vs”,计算机)
打印(“石头砸剪刀!你输了!\n”)
其他:
打印(“剪刀剪”,电脑,“.你赢了!\n”)
其他:
打印(“无效输入”)
再次=输入(“您想再次播放吗?是或否\n”)
再次=再次
如果再次==“是”或再次==“y”:
player=False
其他:
player=True
main()
main()

将主方法放入
while(True):
循环中,如果调用了选项4,请像这样使用
break

elif menuSelect == 4:
        break
添加缩进到

again = input("Would you like to play again? Yes or no\n")
again = again.lower()

if again == "yes" or "y":
    player = False
else:
    main() 
您的武器阵列尚未定义,而不是调用
main()
只需设置
player=True
。轻松修复,只需在
onePlayer():
方法的开头添加
武器=[“石头”、“布”、“剪刀”]
。我可以看到另一个问题,改变

if again == "yes" or "y":

最后一件事,别忘了你的进口货!(将其放在代码的顶部。)


顺便说一句,
break
语句只告诉python将它所处的循环或while循环保留任何内容。

将主方法放入
while(True):
循环,如果调用了选项4,请像这样使用
break

elif menuSelect == 4:
        break
添加缩进到

again = input("Would you like to play again? Yes or no\n")
again = again.lower()

if again == "yes" or "y":
    player = False
else:
    main() 
您的武器阵列尚未定义,而不是调用
main()
只需设置
player=True
。轻松修复,只需在
onePlayer():
方法的开头添加
武器=[“石头”、“布”、“剪刀”]
。我可以看到另一个问题,改变

if again == "yes" or "y":

最后一件事,别忘了你的进口货!(将其放在代码的顶部。)


顺便说一句,
break
语句只告诉python保留它所处的for循环或while循环。

每次在while循环中都要再次检查条件。我已经更新了一点代码,但程序仍然保留在while循环中。此代码位于while循环内。请使用正确的标识更新代码,并且未在任何地方定义
武器。明白。为了保持简单,我省略了部分代码。我将完全更新。请每次再次检查条件