猿问

有没有办法从屏幕上删除乌龟?

我有以下代码:


answer = "ABC"

flag.goto(-999, -999)

while (answer.lower != 'y' or answer.lower != 'n'):

    print("You got the flag! Free play(y/n)?")

    answer = input("")

    if answer.lower == 'y':

        pass

    if answer.lower == 'n':

        return None

我试图flag通过将它添加到列表然后使用 删除它来删除名为 的乌龟del(testlist[0]),但它没有用。输出是:


You got the flag! Free play(y/n)?

y

You got the flag! Free play(y/n)?

n

You got the flag! Free play(y/n)?


红糖糍粑
浏览 123回答 2
2回答

翻过高山走不出你

你的问题令人困惑,因为标题和文字问的是一件事,而你的示例代码和输出显示的是完全不同的东西。让我们来解决这个问题:有没有办法从屏幕上删除乌龟?一般turtle.hideturtle()都会按照你的意愿去做。处理海龟的唯一方法是通过 ascreen.clear()来销毁所有海龟。(turtle上面的变量需要设置为 的一个实例,Turtle()变量screen需要设置为 的单数实例Screen()。

慕尼黑5688855

您可以从此文档中更好地了解海龟的可见性。基本上,您可以使用turtle.hideturtle()或turtle.ht()使乌龟不可见。但是,这并不意味着海龟被移除,所以它仍然占用内存。您可以调用turtle.Screen.clear(),但这会重置所有内容,甚至是您可能想要保留的内容。如果我想删除海龟而不是隐藏它们,因为一遍又一遍地这样做会占用太多内存,我会简单地隐藏海龟,当程序需要另一只海龟时,而不是创建另一只海龟一,只需取消隐藏隐藏的海龟即可再次使用。
随时随地看视频慕课网APP

相关分类

Python
我要回答