为什么使用turtle模块后ActivePython会冻结?

2 投票
2 回答
912 浏览
提问于 2025-04-16 12:18

我安装了ActivePython 3.1,并按照文档要求用-n参数运行了IDLE。不过,当我尝试使用像turtle.position()这样的调用时,新的窗口打开了(带有Tk图标),但是窗口却卡住了,什么也不显示。这可能是什么问题呢?

2 个回答

0

部分问题解决了,因为我没有在IDLE里运行它,而是把它当作一个Python脚本来执行,然后等待输入,看看画出了什么。

2

程序卡住的直接原因是Tk的事件循环没有被处理。没有这个循环,Tk窗口就无法正确显示或更新(所有的图形用户界面工具包都是基于事件的,但Tk特别依赖这个)。不幸的是,我对Python的Tk绑定和IDLE了解得不够深,无法准确说出造成这个问题的原因。

撰写回答