如何在位置-200, 0时停止乌龟

问题描述 投票:0回答:1

如何让海龟停止在-200,0 当我将其设置为 = -200, 0 时,它表示语法无效

t.speed(20)
t.goto(-200, 0)
t.color('red')
t.fillcolor('yellow')
t.begin_fill()
t.width(3)
while True: 
    t.fd(400)
    t.lt(170)
    if abs(t.pos()) < -201:
        t.end_fill()
        break
t.mainloop()              

position turtle-graphics
1个回答
0
投票

这个测试有一些问题:

if abs(t.pos()) < -201:

任何数的

abs()
都不能小于负数。另外,
pos()
不返回数字,它返回
tuple
。我猜你真正想要的是:

if t.distance((-200, 0)) < 1:  # turtle positions are float, not exact

完整解决方案:

import turtle

turtle.speed('fastest')
turtle.setx(-200)
turtle.width(3)
turtle.color('red', 'yellow')

turtle.begin_fill()

while True:
    turtle.forward(400)
    turtle.left(170)

    if turtle.distance((-200, 0)) < 1:
        break

turtle.end_fill()

turtle.hideturtle()
turtle.mainloop()

输出:

请注意,在这种情况下,由于线条交叉,填充图案取决于系统。

© www.soinside.com 2019 - 2024. All rights reserved.