【发布时间】:2019-09-09 04:39:41
【问题描述】:
我正在开发井字游戏中的两个功能。 “板”是一个列表,用户使用小键盘放置他或她的标记。该数字是“板”列表的索引。
第一个函数 - 检查棋盘上是否有空位可玩 并返回一个布尔值(如果空间可用,则返回 True)。
第二个函数 - 从用户那里获取他们放置标记的输入,然后使用第一个函数检查它是否是一个空闲位置
board = ['#','X','O','X',' ','X','O','X','O','X']
def space_check(board, position):
return board[position] == ' '
我测试它 -
space_check(board, 4)
>True
def player_choice(board):
position = input("Player's next move")
if space_check(board, position) == True:
return position
错误:
TypeError: 列表索引必须是整数或切片,而不是 str
我是新来的,如果这是一团糟,我深表歉意。非常感谢您的帮助。
【问题讨论】:
-
试试
position = int(input("Player's next move"))。目前,输入值为str,但我猜你的函数需要int。 -
一个小提示:您已经发现问题出在
input的结果上,剩下要做的就是google python input,它会帮你到官方docs,它声明:函数然后从输入中读取一行,将其转换为字符串(去除尾随换行符),然后返回跨度>