为什么使用jupyter notebook运行完turtle库的程序,Tkinter图形界面会卡顿?

新手上路,刚开始学习用jupyter来运行turtle程序的时候可能会出现这样的情况。
为什么使用jupyter notebook运行完turtle库的程序,Tkinter图形界面会卡顿?_第1张图片
在画笔运行到一半的时候把窗口关了,就看到了jupyter 抛出的一个异常。
为什么使用jupyter notebook运行完turtle库的程序,Tkinter图形界面会卡顿?_第2张图片
上网搜了一下类似的问题,也没有什么答案。然后查了下词典,terminator有“终结”的意思,估计出现了类似于使用循环结构但又停不下来的死循环的异常。

接着参考了Python绘图Turtle库详解这篇文章,里面有一条很重要的命令。

mainloop,done

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

你可能感兴趣的:(为什么使用jupyter notebook运行完turtle库的程序,Tkinter图形界面会卡顿?)