1

我正在尝试为我的 8 年级计算机课程(12-13 岁)创建关于字符串操作的课程。我希望他们从网站上抓取文本,并认为使用战争与和平可能很酷。但是,当我尝试读取 URL 时,IDLE 不断崩溃。它在 Mac 上的终端或 PC 上的命令行中运行良好(运行需要 5-10 秒),但是出于网络安全原因,我的学生无法访问命令行。

我的代码看起来像这样

import urllib2
site = urllib2.urlopen('http://www.gutenberg.org/cache/epub/2600/pg2600.txt')
site.read()

有人有建议吗?

4

4 回答 4

2

您是否阅读过有关在 OS X 下使用 IDLE 的页面?如果您还没有安装更新的 Tcl/Tk 包,则需要先安装。

于 2012-05-21T19:15:56.803 回答
1

我不得不说在 8 年级教 Python 很酷,战争与和平也很酷 :)

不酷的家伙是IDLE(或者我应该说是Tcl/Tk),在处理大量文本打印时会受到影响,战争与和平对他来说太过分了。

尝试限制您打印的文本数量,如下所示:

>>> import urllib2
>>> site = urllib2.urlopen('http://www.gutenberg.org/cache/epub/2600/pg2600.txt')
>>> site.read()[:1024]
于 2012-05-21T19:20:00.367 回答
0

您可以逐行阅读整个内容,如下所示:

import urllib2

site = urllib2.urlopen('http://www.gutenberg.org/cache/epub/2600/pg2600.txt')
for line in site:
    # print it or do whatever
于 2012-05-22T11:05:24.823 回答
0

在 shell 中显示长行时,IDLE 会变慢。看看这个问题

您需要 IDLE 的Squeezer扩展。IdleX项目为 IDLE 提供了Squeezer以及其他有用的扩展。

于 2012-10-25T03:26:49.273 回答