首页 > 解决方案 > 初学者python:需要帮助覆盖列表值以轻松玩游戏

问题描述

作为新手,我正在构建我的第一个井字游戏,并且在尝试替换#in时遇到了很多错误real_board[]。这是我的第一个编码语言,所以我确信我在这里犯了一些愚蠢的错误。我确信有更好的方法来实现这一点,所以我愿意接受所有建议。

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

real_board=['#','#','#','#','#','#','#','#','#','#']

player_moves=int(input('choose a number from 1 to 9: '))
if (player_moves)<1 or (player_moves)>9:
    print('unacceptable range')
elif (player_moves)==1:
    real_board[1]=='X'
    print(display_board(real_board))

到目前为止,我得到了这个输出:

choose a number from 1 to 9: 1
--------
|#|#|#|
--------
|#|#|#|
--------
|#|#|#|
--------
None

我知道我没有考虑大于 1 的数字,但我试图首先克服这个最初的障碍。

标签: pythonlistfunction

解决方案


您使用的是相等运算符 ( ==) 而不是赋值运算符 ( =):

real_board[1]=='X'

应该:

real_board[1]='X'

推荐阅读