보드를 2 차원 배열로 표현한 체스 게임을하고 있습니다. 그러나 체스 조각은 공간과는 다른 폭은, 그래서 내가 이런 식으로 인쇄하려고 할 때 그들은 난민 얻을 : 나는 다른 많은 시도했습니다동일한 문자 간격의 파이썬으로 2 차원 목록 인쇄
def print_board():
y = ["♖", "♜", "♗", "♝", "♘", "♞", "♕", "♛", "♔","♚", "♙", "♟"," "]
for i in range(8):
tempListe = "".join(board[i])
z=0
for x in ["T","t","L","l","H","h","D","d","K","k","P","p","_"]:
if x in tempListe:
tempListe = tempListe.replace(x,y[z])
z+=1
for j in range(8):
print("{0:2}".format(tempListe[j]),end="")
print("")
print_board()
: 여기
♖ ♘ ♗ ♕ ♔ ♗ ♘ ♖
♙ ♙ ♙ ♙ ♙ ♙ ♙ ♙
♟
♟ ♟ ♟ ♟ ♟ ♟ ♟
♜ ♞ ♝ ♛ ♚ ♝ ♞ ♜
는 인쇄 기능입니다 모든 것이 동일하게 끝나는 것처럼 보입니다. 조각 사이의 공간이 너무 커지지 않으면 어떻게 해결할 수 있습니까?
재생할 수 없습니다. 또한 공간의 너비는 "적절한"콘솔 글꼴의 모든 문자와 동일해야합니다. Arial 등을 사용하지 않았는지 확인하십시오. –
BTW, 당신은 그 함수의 몸체를'd = dict (zip ("TtLlHhDdKkPp_", "♖♜♗♝♘♞♕♛♔♚♙♟"))로 대체 할 수 있습니다; board in line : print (".join (map (d.get, line)))'' –