turtle. left(range)为什么是以相对坐标系为准?它不是海龟角度吗?
可以参考一下
在 Python 中绘制海龟图时,可以通过 mode()
函数来判断当前使用的坐标系是绝对坐标系(海龟坐标系)还是相对坐标系。mode()
函数始终返回当前绘图的模式,即 'standard'
表示当前使用的是海龟坐标系,而 'logo'
则表示当前使用的是相对坐标系。
例如,在以下示例代码中,我们先将海龟向右移动 50
个单位,然后向前移动 50
个单位:
import turtle
t = turtle.Turtle()
t.mode('standard') # 切换到海龟坐标系
t.right(90)
t.forward(50)
t.mode('logo') # 切换到相对坐标系
t.forward(50)
turtle.done()
在这个例子中,我们首先切换到海龟坐标系,将海龟向右旋转 90
度,然后向前移动 50
个单位。接着,我们切换到相对坐标系,并向前移动另外 50
个单位。由于在切换模式之后,所有后续的坐标操作都会基于当前模式下的坐标系进行计算,因此 t.forward(50)
操作在第二次调用时是相对于前一次已经移动了 50
个单位后的位置而言的。
因此,如果你希望在海龟坐标系下进行操作,则应该确保当前模式为 'standard'
,而如果希望在相对坐标系下进行操作,则应该切换模式为 'logo'
。