Python nltk.download()'TCLError'无法下载语料库Fedora 16

时间:2012-05-29 03:05:09

标签: python tcl fedora nltk

我有一个新建的系统,全新安装了Fedora 16.我已经安装了nltk并开始下载语料库'。正如下面的消息显示我遇到了某种与TclError相关的问题。我环顾四周,似乎无法找到任何其他问题。

>>> import nltk
>>> nltk.download()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python2.7/site-packages/nltk-2.0.1-py2.7.egg/nltk/downloader.py", line 643, in download
    self._interactive_download()
  File "/usr/lib/python2.7/site-packages/nltk-2.0.1-py2.7.egg/nltk/downloader.py", line 956, in _interactive_download
    except TclError:
NameError: global name 'TclError' is not defined

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

TclError是由Tkinter模块IIRC定义的Python异常; Tcl本身并不会产生它(事实上,从Tcl的角度来看,它实际上毫无意义)。您是否尝试过导入Tkinter?

答案 1 :(得分:1)

我似乎解决了我遇到的问题。我有两个相同的系统设置,但在安装NLTK时采用了两种略有不同的方法,一个产生了我最初发布的错误而另一个没有。我还没弄清楚原因。当我设置非工作系统时我:

1.) yum install nltk*
2.) easy_install pyyaml
3.) python
4.) >>> import nltk
5.) >>> nltk.download()
6.) got the error 

基于一些游戏,我已经确定在Fedora 16 yum repo版本2.0.1中提供的NLTK版本没有编译libyaml支持,此外与pip提供的pyyaml版本不兼容。

我开始新鲜并删除所有内容并按照此过程进行操作:

1.) yum install libyaml libyaml-devel
2.) easy_install pyyaml
3.) easy_install nltk
4.) python
5.) import nltk
6.) nltk.download()
7.) download corpus'

我已经向Fedora提交了一份错误报告,让他们知道回购中提供的NLTK版本存在问题。