我想在控制台上打印一个连接四板,我有以下代码:
def print_Board (b):
print('.'.join(map(lambda x: str(x + 1), range(connectfour.BOARD_COLUMNS))))
for y in range(connectfour.BOARD_ROWS):
print('. '.join(b[x][y] for x in range(connectfour.BOARD_COLUMNS)))
输出应如下所示:
1 2 3 4 5 6 7
. . . . . . .
. . . . . . .
. . . . . . .
R . . . . . .
R Y R . . . .
Y Y R . . . .
但它出现了:
1.2.3.4.5.6.7
. . . . . .
. . . . . .
. . . . . .
R . . . . .
R Y R . . .
Y Y R . . .
答案 0 :(得分:0)
如果空单元格表示为空字符串或空格字符,则可以按以下方式转储它。
def print_board (b):
print(' '.join(map(lambda x: str(x + 1), range(connectfour.BOARD_COLUMNS))))
for y in range(connectfour.BOARD_ROWS):
print(' '.join(b[x][y].strip() or '.' for x in range(connectfour.BOARD_COLUMNS)))
>>> print_board([
... [' ', ' ', ' ', ' ', 'R', 'R', 'Y'],
... [' ', ' ', ' ', ' ', ' ', 'Y', 'Y'],
... [' ', ' ', ' ', ' ', ' ', 'R', 'R'],
... [' ', ' ', ' ', ' ', ' ', ' ', ' '],
... [' ', ' ', ' ', ' ', ' ', ' ', ' '],
... [' ', ' ', ' ', ' ', ' ', ' ', ' '],
... [' ', ' ', ' ', ' ', ' ', ' ', ' '],
... ])
1 2 3 4 5 6 7
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
R . . . . . .
R Y R . . . .
Y Y R . . . .