如何实现字段和象他们一样解决国际象棋
我想实现一个叫做Pah Tum的游戏。 (它是如何工作的我的问题,这是不相关的。)我想在这样一个控制台创建一个字段:如何实现字段和象他们一样解决国际象棋
A B C D 1 [] [] [] []
2 [] [] [] []
3 [] [] [] []
4 [] [] [] []
我已经想通了如何打印但是: 我要定义一个函数中我可以解决特定领域和阻止他们,就像这样:B3
A B C D 1 [] [] [] []
2 [] [] [] []
3 [] [X][] []
4 [] [] [] []
不知怎的,我无法弄清楚如何做到这一点,而无需使用百行代码,我打印一步一步的。
回答:
您可以创建一个类,并使用__setitem__
:
import string class Board:
def __init__(self, width):
self.w = width
self.board = [[[] for i in range(width)] for b in range(width)]
def __setitem__(self, coords, val):
self.board[coords[0]][coords[-1]] = [val]
def __repr__(self):
return ' '+' '.join(list(string.ascii_lowercase[:self.w]))+"\n"+'\n'.join(string.ascii_lowercase[a]+' '.join(str(i) for i in b) for a, b in enumerate(self.board))
board = Board(4)
board[(2, 2)] = 'X'
print(board)
输出:
a b c d a[] [] [] []
b[] [] [] []
c[] [] ['X'] []
d[] [] [] []
以上是 如何实现字段和象他们一样解决国际象棋 的全部内容, 来源链接: utcz.com/qa/258067.html