我需要打印一个二维列表,用于连接四个游戏,包含7列和6行。这是我的代码,但它只打印一个6x6表。 connectfour模块的全局常量是:BOARD_ROWS = 6和BOARD_COLUMNS = 7
def print_board(game_state: list)-> None:
for i in range(connectfour.BOARD_ROWS):
for j in range(connectfour.BOARD_COLUMNS):
if j != connectfour.BOARD_COLUMNS -1:
if game_state[j][i] == connectfour.NONE:
print('.', end=' ')
elif game_state[j][i] == connectfour.RED:
print('R', end=' ')
elif game_state[j][i] == connectfour.YELLOW:
print('Y', end=' ')
else:
print('\n',end='')
这是我得到的输出:
. . . . . .
. . . . . .
Y . . . . .
R . . . . .
R . . . . .
R R R Y Y Y
正如您所看到的,只有6列。但是我知道第7局就在那里因为在这个特定的输出中,“Y”球员在第7栏中丢掉一个棋子后赢了。我只是不明白为什么它不打印第7列。在此先感谢您的帮助。
答案 0 :(得分:0)
if j != connectfour.BOARD_COLUMNS -1:
表示您明确排除了最后一列。删除if
构造并取消以下if
,你应该很好。