Выравнивание элементов матрицы python
решил сделать простую шахматную доску, для выставления фигур на нее. С логикой вроде бы все понятно, хромает только вывод. Все символы храню в списке, есть ли какой-то способ сохранить квадратность доски, то есть не применять табуляцию, как показано на картинке, при сделать все ровно. Я не хочу использовать tkinter, а обойтись только консолью.
Код:
import string
def create_clear_board():
abc = string.ascii_uppercase[:8]
board = [['⬜⬛'[(j + i) % 2] for j in range(8)] for i in range(8)]
for i in range(8):
board[i].insert(0, i + 1)
board[2][3] = '♖'
board.append(' '+abc)
return board
for i in create_clear_board():
print(*i)
Ответы (1 шт):
Автор решения: TigerTV.ru
→ Ссылка
А если попробывать так? Используя format для вывода:
import string
def create_clear_board():
abc = string.ascii_uppercase[:8]
#board = [[ "⬜⬛"[(j + i) % 2] for j in range(8)] for i in range(8)]
board = [[ "□■"[(j + i) % 2] for j in range(8)] for i in range(8)]
for i in range(8):
board[i].insert(0, i + 1)
board[2][3] = '♖'
board.append(' '+abc)
return board
for i in create_clear_board():
for m in i:
print('{:>2}'.format(m), end='')
print()
Вывод:
1 □ ■ □ ■ □ ■ □ ■
2 ■ □ ■ □ ■ □ ■ □
3 □ ■ ♖ ■ □ ■ □ ■
4 ■ □ ■ □ ■ □ ■ □
5 □ ■ □ ■ □ ■ □ ■
6 ■ □ ■ □ ■ □ ■ □
7 □ ■ □ ■ □ ■ □ ■
8 ■ □ ■ □ ■ □ ■ □
A B C D E F G H
Но, лучше использовать графическую библиотеку.

