python - 我无法弄清楚这段代码有什么问题
问题描述
我现在只是在学习 Python,并试图自己做井字游戏。我已经编写了这段代码,但我不知道我的逻辑有什么问题。def player_choice(board): #这个函数询问玩家的下一个位置
i= 0
if full_board_check(board):
print ("All the positions have been filled, the game is over")
while i not in [1,2,3,4,5,6,7,8,9] or board[i]=='X' or board[i]=='Y':
i=input('Please choose a number')
return i
与此相反,这被认为是正确的: def player_choice(board):
position = 0
while poistion not in [1,2,3,4,5,6,7,8,9] or not space_check(board,position):
position=int(input("Please choose a valid position"))
return position
解决方案
输入返回一个字符串。在第二个代码中,您将转换为整数,所以没关系。
推荐阅读
- r - R中不存在标头
- javascript - UTF8 Fancytext 到 Javascript 中的字母数字
- reactjs - Yield 调用返回一个承诺
- python-3.x - how to properly import files in python3
- spring - Spring @Autowired Interface conditional resolution at runtime via CLI
- python - 处理来自包/模块的错误时如何处理 Python 异常
- bash - How to let user quit the process of specific command in bash
- c# - how to remove WCF service virtual directory in IIS
- arrays - 根据标准创建动态数组并粘贴到工作表
- sed - 如何使用 sed 将字符串替换为变量字符串?