2024-06-26 13:24:56 发布
网友
我有一个董事会,我想在上面模拟主教可能的行动。我尝试了以下代码:
for c1, c2 in [(1, -1), (1, 1), (-1, -1), (-1, 1)]: for x, y in [range(x+c1, board_size), range(y+c2, board_size)]: moves.append(x, y)
但要找到所有的动作是行不通的。然而,我不明白为什么。不是四个方向都查过了吗?你知道吗
你的逻辑是正确的,但你的执行不是。你知道吗
x
y
board_size
zip()
这将起作用:
right_up = zip(range(x + 1, board_size), range(y - 1, -1, -1)) right_down = zip(range(x + 1, board_size), range(y + 1, board_size)) left_up = zip(range(x - 1, -1, -1), range(y - 1, -1, -1)) left_down = zip(range(x - 1, -1, -1), range(y + 1, board_size)) for r in (right_up, right_down, left_up, left_down): for new_x, new_y in r: # add coordinates to move list
你的逻辑是正确的,但你的执行不是。你知道吗
x
或y
到0(另一半从x
或y
到board_size
x
或y
计数到0zip()
来创建一个可iterable元组集合。你知道吗这将起作用:
相关问题 更多 >
编程相关推荐