首页 > 解决方案 > 我无法弄清楚这段代码有什么问题

问题描述

我现在只是在学习 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
     

标签: python

解决方案


输入返回一个字符串。在第二个代码中,您将转换为整数,所以没关系。


推荐阅读