我有一些代码如下:
# My code here
turtle.bye()
之后有什么办法可以重新打开海龟窗口吗? 我知道你可以做到
turtle.clearscreen()
但这不会关闭海龟窗口。
我会接受任何允许我关闭海龟图形窗口然后重新打开它的答案,而无需打开并运行另一个Python程序来执行此操作。
提前谢谢您
我见过@LukeTimmons 的方法有效但并不总是可靠的情况,而且并非在所有情况下都有效。 尝试一下这个解决方案:
import time
import turtle
turtle.dot(200, 'green')
time.sleep(2)
turtle.bye()
# These two lines (indirectly) resurrect turtle environment after turtle.bye()
turtle.Turtle._screen = None # force recreation of singleton Screen object
turtle.TurtleScreen._RUNNING = True # only set upon TurtleScreen() definition
turtle.dot(200, 'red')
turtle.mainloop()
它重置两个标志,防止海龟再次启动。 重新启动后创建自己的乌龟可能比使用默认的乌龟更安全,默认的乌龟可能会指向离开的环境。
可能还有其他方法,但这是我知道的唯一方法。
from turtle import *
def turtle1():
#Your code here
turtle1()
turtle.bye()
turtle1()
这应该重新运行您的代码,而无需重新输入。
当我想要一个程序关闭海龟窗口并稍后打开它时,我发现重新加载海龟模块效果最好。 我这样做:
import turtle #make sure the current context sees the turtle package
import importlib
importlib.reload(turtle)
raphael = turtle.Turtle() #opens a window with the new turtle