为什么还有第二只海龟?

时间:2020-06-08 13:41:47

标签: python turtle-graphics

我正在用python学习乌龟图形,由于某种原因,屏幕上还有第二只乌龟,我什至没有创建第二只乌龟。我该如何摆脱第二只乌龟?

import turtle
s = turtle.getscreen()
t = turtle.Turtle()
for i in range(4):
    t.fd(100)
    t.rt(90)
turtle.exitonclick()

2 个答案:

答案 0 :(得分:1)

由于行s = turtle.getscreen(),出现了第二只乌龟。

不需要此行(您不使用s),如果删除该行,此乌龟会消失,但其余代码似乎仍像以前一样工作。

答案 1 :(得分:0)

乌龟库提供了两个接口,一个是功能(面向初学者),另一个是面向对象。因为混合了两个界面,所以得到了额外的乌龟。 (而且@ mkrieger1的解决方案不能完全解决问题。)我总是建议使用import,例如:

from turtle import Screen, Turtle

screen = Screen()
turtle = Turtle()

for _ in range(4):
    turtle.forward(100)
    turtle.right(90)

screen.exitonclick()

这使您可以访问面向对象的界面并阻止功能性界面。将两者混在一起会导致各种错误和伪像。