Python TypeError:输入最多需要1个参数,得到3个参数(石头、布、剪刀游戏)

Python TypeError:输入最多需要1个参数,得到3个参数(石头、布、剪刀游戏),python,Python,继续获取此语法错误 TypeError:输入最多需要1个参数,得到3个 有人知道如何解决这个问题吗 from random import randint from tkinter import * po = ["Rock", "Paper", "Scissors"] player = False cpu = po[randint(0, 2)] while player == False: player = input("Rock", "Paper", "Scissors?")

继续获取此语法错误

TypeError:输入最多需要1个参数,得到3个

有人知道如何解决这个问题吗

from random import randint 
from tkinter import *

po = ["Rock", "Paper", "Scissors"]

player = False
cpu = po[randint(0, 2)]

while player == False:
    player = input("Rock", "Paper", "Scissors?")
    if player == computer:
        print("Tie")
    elif player == "Rock":
        if computer == "Paper":
            print("You lose!", computer, "covers", player)
        else:
            print("You win!", player, "smashes", computer)
    elif player == "Paper":
        if computer == "Scissors":
            print("You lose!", computer, "cuts", player)
        else:
            print("You win!", player, "covers", computer)
    elif player == "Scissors":
        if computer == "Rock":
            print("You lose!", computer, "smashes", player)
        else:
            print("You win!", player, "cut", computer)
    else:
        print("That's not a valid play. Check your spelling!")

    player = False
    computer = po[randint(0,2)]

您误用了
输入
。传递给它的参数只是提示,因此只能是单个字符串

player = input("Rock, Paper, Scissors?")

可能更像你想要的。

似乎你从来没有真正给对方机会输入石头、布或剪刀,你可能应该按照

player = str(input("Rock, Paper, or Scissors?"))

这样玩家就可以被分配到玩家选择的任何一个

我想你的意思是
输入(“石头、布、剪刀?”)
注意这是一个字符串,而不是你的例子中的三个单独的字符串。错误显然是
输入
最多需要一个参数,但你传递了三个。为什么要将三个参数传递给
input
?那么播放机将无法选择一个特定的参数?无法强制他们只键入其中一个字符串。你必须检查以确保他们键入的内容有效。