新手上路,刚开始学习用jupyter来运行turtle程序的时候可能会出现这样的情况。

在画笔运行到一半的时候把窗口关了,就看到了jupyter 抛出的一个异常。

上网搜了一下类似的问题,也没有什么答案。然后查了下词典,terminator有“终结”的意思,估计出现了类似于使用循环结构但又停不下来的死循环的异常。
接着参考了Python绘图Turtle库详解这篇文章,里面有一条很重要的命令。

原来只要在代码的最后加上turtle.done() or turtle.mainloop(),就不会出现图形界面卡顿的问题了。在运行完turtle程序后,调用Tkinter的mainloop函数来结束Tkinter图形界面再继续跑turtle程序。函数文档里面也说了,只要不是用IDLE来跑turtle的话,在其它图形界面的程序里都需要在最后调用mainloop函数。


在jupyter notebook中使用turtle库编写图形程序时,如果中途关闭窗口会出现程序卡顿。这是因为缺少了`turtle.done()`或`turtle.mainloop()`来结束Tkinter图形界面。加入这个命令后,可以在完成turtle程序后正确关闭Tkinter界面,避免程序卡顿。
最低0.47元/天 解锁文章
2756

被折叠的 条评论
为什么被折叠?



