我正在尝试创建一个井字棋游戏,我的初始棋盘显示应如下所示
O |哦| X
但是我的程序打印如下:
X | 哦| X|
O | X|
O | X |
如何打印以实现指标目标。我的程序将接受尺寸并打印相同数量的行和列,最多 5x5
这是我的代码:
import math
def display_board(board):
dimensions = ['4', '9','16','25']
elems = int(len(board))
if (elems in dimensions):
print ('COLUMNS AND ROWS ARE EQUAL')
else:
print ('COL AND ROWS ARE NOT EQUAL')
rows = int (math.sqrt(elems))
cols = rows
for r in range (0,rows,1):
for c in range (0,cols,1):
print (' ' + board[elems-1] + ' |')
elems = elems -1
print ('\n')
brd = ['X','O','#','X','O','#','X','O','X']
display_board (brd)
print() 自动以换行符结束。因此,您需要将不需要换行符的行更改为
end=''
(空字符串)。
此外,您的
print('\n')
会执行双换行,因为您明确给出了一个换行符,并且它像往常一样添加了一个换行符。您可能只想 print()
在那里。
总共:
for r in range (0,rows,1):
for c in range (0,cols,1):
print(' ' + board[elems-1] + ' |', end='')
elems = elems -1
print()