我有一个新建的系统,全新安装了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
有人可以帮忙吗?
答案 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版本存在问题。