我的程序绘制的图像已经有坐标附加到他们。我希望我的乌龟在不在坐标的时候能够拿起笔。现在海龟在到达坐标前继续写字。
代码:

with open('output.txt', 'r') as f:
    data = ast.literal_eval(f.read())

tony = turtle.Turtle()

for z in data:
    position = tony.pos()
    tony.goto(z)

输出
1python -  turtle 不在坐标处时拿起笔-LMLPHP
如你所见,乌龟甚至在到达坐标之前就继续画画。
我认为这是可行的,但我不知道如何实现它。
for z in data:
     position = tony.pos()
     while position in z == False:
         tony.penup()

for z in data:
     position = tony.pos()
     while position in z == True:
        tony.pendown()
        print("True")

最佳答案

我创建了一个函数来检测海龟的位置是否在坐标列表中。然后使用ontimer函数每隔毫秒调用一次此函数。为了让程序在毫秒内检查位置,我还不得不放慢海龟的速度
代码:

tony = turtle.Turtle()
tony.color("white", "cyan")
tony.speed(5.5)

def on_canvas():
    position = tony.pos()
    if position in data:
        tony.pendown()
        print("This is a coordinate")
    else:
        tony.penup()
        print("This is not a coordinate")


for z in data:
    playground.ontimer(on_canvas, 1)
    tony.goto(z)

turtle.done()


python -  turtle 不在坐标处时拿起笔-LMLPHP

关于python - turtle 不在坐标处时拿起笔,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56897234/

10-15 17:38