coordinates = [(0, 2), (0, 1), (1, 2), (1, 1), (0, 0), (1, 0), (1, 1), (0, 1), (0, 0)]
我已经创建了上述的Python数组。它包含点(x,y)的元组。我会假设我从第一点开始(不是orgin)。我想按照给定的顺序移动到点。我所拥有的唯一移动功能是rotate90Degrees(direction)
,其中方向分别为左侧和右侧1或-1。和时间是多少时间移动。我将假设时间= 1相当于坐标系中的一个单位。有没有一种聪明的方法可以轻松地将这个变成运动指令而没有巨大的if/else if/else?我有什么至今:Python - 坐标旋转/移动指令
start = coordinates[0]
for x in range(1,len(coordinates)):
finish = coordinates[x]
change.append((finish[0] - start[0],finish[1] - start[1]))
start = coordinates[x]
是的,你可以概括这个过程。打印出你的**更改**清单。写下您每次更改所需的说明。你是如何派生的?描述为一个通用算法,用于从已知标题进行给定更改(您必须注意标题)。现在,编写一个遍历您的更改列表的循环,并为每个更改生成说明。 – Prune