15

我最近开始在 Python 中使用 turtle 模块,我承认,我是一个完全的新手。我一直无法让海龟在其中进行绘图的图形窗口保持打开状态。即使我尝试运行像这样简单的东西:

import turtle
wn = turtle.Screen()
tur = turtle.Turtle()
tur.forward(50)

我得到的只是 Python 启动器图标,它会在我的扩展坞上出现一瞬间然后关闭。感谢您提供任何帮助,顺便说一句,我正在 Aptana Studio 3 中执行此操作。

4

6 回答 6

22

另外,您可能想尝试

turtle.mainloop()

在我看来,这比使用 Tk 稍微好一点。

于 2013-10-03T01:17:42.220 回答
4

添加:

import Tkinter
Tkinter.mainloop()

到你的脚本的末尾,这将解决它。

发生的事情是,一旦你创建了一个屏幕并绘制到它上面,没有什么可以阻止 Python 立即退出。对 Tkinter.mainloop 的调用同步处理来自 Tkinter(构建 Python 的海龟库的 GUI 工具包)的事件,直到屏幕窗口关闭。

于 2013-09-27T02:48:10.370 回答
2

当我输入以下代码时:

import turtle as t
t.fd(100)

包含海龟图形的窗口刚刚出现并关闭。但是当我输入以下代码时:

import turtle as t
t.fd(100)
t.mainloop()

窗口不会像以前那样自动消失。

因此t.mainloop()turtle.mainloop()取决于您导入库的方式,可用于使窗口保持打开状态,只要您愿意。

希望这有帮助!

于 2020-07-08T12:26:49.890 回答
2

或者您可以尝试添加:

wn.exitonclick()

这将使图形窗口保持打开状态,直到您单击它。

于 2018-06-30T12:46:30.813 回答
1

在您的海龟图形程序中添加turtle.done()作为最后一条语句将使窗口保持打开状态。

于 2020-07-07T23:48:28.420 回答
1

我也有同样的问题。我可以非常短暂地看到 Turtle 窗口,只是短暂的闪光,然后它就消失了。为了补救,我只写input()在我的代码末尾。这将防止 Turtle 窗口关闭,因此人们可以看到发生了什么。

turtle.mainloop()为我工作。

于 2019-02-17T22:10:58.110 回答