我创建了董事会,但我对典当感到困惑。
board = [[(x,y) for x in range(1,9)] for y in range(1,9)]
for k in range(len(board)):
print('| |' * len(board))
我希望看到类似的东西:
| || || || || || || || |
|P||P||P||P||P||P||P||P|
| || || || || || || || |
| || || || || || || || |
| || || || || || || || |
| || || || || || || || |
|P||P||P||P||P||P||P||P|
| || || || || || || || |
但是我可以选择哪种方式将棋子放在棋盘上? 我应该使用double for循环检查坐标是否相等或存在替代方式?
def pawn():
coordinates = board[1][1]
return coordinates
for i in range(len(board)):
for j in range(8):
if board[i][j] == pawn():
print('|P|' * len(board))
else:
print('| |')
答案 0 :(得分:0)
这样的事情可以起作用:
library(webshot)
library(png)
webshot("http://www.doctormetrics.com/","doctor.png")
img <- readPNG("doctor.png")
dim(img)
x11()
g <- rasterGrob(img, interpolate=TRUE)
qplot(1:2, 1:2, geom="blank") +
annotation_custom(g, xmin=-Inf, xmax=Inf, ymin=-Inf, ymax=Inf) +
geom_point()
但我不确定这是不是你想要的。在那种情况下,板是2D矩阵,其形状类似于板。 如果是国际象棋,你需要一个&#39; P&#39;对于白人和一个&#39; p&#39;为了黑色。
答案 1 :(得分:0)
典当的初始位置是第2行和第7行。您可以检查for
循环索引并设置它们的位置。类似的东西:
board = [[(x,y) for x in range(1,9)] for y in range(1,9)]
pawnRows = [1, 6] # 0 based index
for k in range(len(board)):
if k in pawnRows:
print('|P|' * len(board))
else:
print('|X|' * len(board))
答案 2 :(得分:0)
使其更通用,您可以使用array
或pandas.DataFrame
来记住董事会的状态
设置件
piece = collections.namedtuple('piece', ('value', 'mark'))
EMPTY = piece(0, '|X|')
PAWN = piece(1, '|P|')
pieces = {p.value: p for p in (EMPTY, PAWN)}
您可以根据需要定义多个部分,甚至可以提供单独的颜色
boardsize = (8,8)
board = pd.DataFrame(data=[[1] * boardsize[0]] * boardsize[1]) * EMPTY.value
pawn_positions = [(1, 1), (3, 4), (7, 6)]
for pawn in pawn_positions:
board.loc[pawn] = PAWN.value
结果是这样的
0 1 2 3 4 5 6 7
0 0 0 0 0 0 0 0 0
1 0 1 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0
3 0 0 0 0 1 0 0 0
4 0 0 0 0 0 0 0 0
5 0 0 0 0 0 0 0 0
6 0 0 0 0 0 0 0 0
7 0 0 0 0 0 0 1 0
for row_nr, row in board.applymap(lambda x: pieces[x].mark).iterrows():
print(''.join(row) + '\n')
给出
|X||X||X||X||X||X||X||X|
|X||P||X||X||X||X||X||X|
|X||X||X||X||X||X||X||X|
|X||X||X||X||P||X||X||X|
|X||X||X||X||X||X||X||X|
|X||X||X||X||X||X||X||X|
|X||X||X||X||X||X||X||X|
|X||X||X||X||X||X||P||X|