如何用Python编写Tic-Tac-Toe播放器输入函数?
在该程序中,我需要编写一个函数,该函数接受玩家的输入,以确定他们要将“X”或“O”放置在Tic Tac Toe游戏的哪个位置,这将是一个介于0-8之间的数字,该函数还将识别无效响应。无效响应将是一个不在0-8之间的数字、任何不是数字或以前输入的数字 有什么问题吗? 无论输入是什么,函数都会将其识别为无效,即使它应该是有效的 这是密码如何用Python编写Tic-Tac-Toe播放器输入函数?,python,tic-tac-toe,Python,Tic Tac Toe,在该程序中,我需要编写一个函数,该函数接受玩家的输入,以确定他们要将“X”或“O”放置在Tic Tac Toe游戏的哪个位置,这将是一个介于0-8之间的数字,该函数还将识别无效响应。无效响应将是一个不在0-8之间的数字、任何不是数字或以前输入的数字 有什么问题吗? 无论输入是什么,函数都会将其识别为无效,即使它应该是有效的 这是密码 def playerinput(): print("Select the number on the board:")
def playerinput():
print("Select the number on the board:")
while True:
playerchoice = input()
if playerchoice.isdigit == True:
if int(playerchoice) in validdata:
validdata.pop(int(playerchoice))
return int(playerchoice)
else:
print("That is not a valid input please enter a different value:")
else:
print("That is not a valid input please enter a different value:")
validdata是一个全局变量
validdata = [0,1,2,3,4,5,6,7,8]
看一看,您是否仔细检查了可从您的程序访问的
validdata
?(例如,可能尝试打印…playerchoice.isdigit
是一个函数。您需要调用它:playerchoice.isdigit()
@deceze我不确定链接的副本会有多大帮助。OP似乎理解这个理论(尽管这个实现有点笨手笨脚);问题只是你指出的打字错误。@FabioVeronese我刚刚检查了“validdata”是否可以从程序中访问。测试时,我发现“playerchoice.isdigit”由于某些原因总是错误的。然后我意识到我忘了放括号,这就是为什么会有错误。