0

我尝试运行 Goldwasser 和 Letscher 的 Python 中的面向对象编程附带的第 15 章程序。第 15 章讨论事件处理。由于某种原因,它不起作用。当我运行它时,它总是使程序崩溃。我的 Python 版本是 3.3.0,具体代码如下:

from cs1graphics import *

class BasicHandler(EventHandler):
  def handle(self, event):
    print( 'Event Triggered')

if __name__ == '__main__':
  simple = BasicHandler()
  paper = Canvas()
  paper.addHandler(simple)

当我运行这个程序时,它会立即使 Python 崩溃。为什么?

编辑:我下载了 Python 2.7.3 只是为了在那个版本中尝试一下,它成功了!所以问题是 Python 3.3.0 中有一些不同的东西导致这个程序崩溃,但我不知道有什么不同或应该有什么不同。请帮忙!

4

1 回答 1

0

曼尼,

最新版本的 cs1graphics (v 1.2a) 增加了对 Python 3 的支持,但它仍然是一个 alpha 版本。它支持大部分的Ch。我们书中的 3 种材料,但第 15 章中的事件处理材料尚未得到完全支持。此外,在 IDLE 中运行事件处理示例时存在更多问题的风险,因为 IDLE 也是一个 Tkinter 应用程序监视事件。

如果您想探索这些功能,可以使用我们早期的 Python 2.x 稳定版本之一。

也欢迎您通过电子邮件将您当前的错误报告发送至 bugs@cs1graphics.org,因为这可能有助于我们改进最新版本。

于 2013-02-04T15:31:07.440 回答