Python井字游戏

我正在尝试根据youtube上的《聪明程序员》指南制作井字游戏。直到那一刻,一切都和教程上的一样顺利:

board = ['-','-','-',
         '-','-','-',
         '-','-','-',]

def display_board():
    print(board[0] + ' | ' + board[1]  + ' | ' +board[2])    
    print(board[3] + ' | ' + board[4]  + ' | ' +board[5])  
    print(board[6] + ' | ' + board[7]  + ' | ' +board[8])  


def play_game():
    # Display initial board
    display_board()


    handle_turn()


def handle_turn():
    position = input("Choose a position from 1-9: ")
    postion = int(position) - 1

    board[position] =  "X"
    display_board()



play_game()

是的,当他运行时,低音效果很好,他可以选择1到9之间的数字,并且板上的减号之一更改为“ X”。当我这样做时,我遇到了一个问题,控制台显示“ TypeError:列表索引必须是整数或切片,而不是str”。 你能帮助我吗? Idk如果它很重要,因为我真的是新手,但是他使用的是python 3.6.1,而我使用的是3.7

评论
  • UFO
    UFO 回复

    您在转弯处遇到错字。更改为:

    def handle_turn():
        position = input("Choose a position from 1-9: ")
        position = int(position) - 1
    
        board[position] =  "X"
        display_board()