导入NLTK:没有模块NLTK corpus。

4
我已经安装了NLTK。下面是安装日志的截图。 enter image description here 当我使用import nltk时,会出现一个错误:

"No module named NLTK.corpus"

这里是一张截图。 enter image description here 可能是什么原因呢?

2
附加图像和截图是不好的做法。使用代码片段或引用格式工具,并将其作为文本附加。 - Farside
您同时拥有Python 2.7和3.4吗?我也曾为此苦苦挣扎,因为pip在某个版本上安装了nltk但另一个版本则未能安装。 - Alex
请您能否提供更多细节?是Python 3还是2?并且请像@Farside所说的那样使用代码片段。每次切换选项卡查看问题很麻烦。 - Pragyaditya Das
我觉得很奇怪的是错误信息包含了 NLTK.corpus 而不是 nltk.corpus。这表明在文件系统或 Python 导入级别上存在大小写转换的问题。也许是因为 iPython 环境出了问题?图片中包含了 "The directory /Users/mlal/Library/Caches/pip/http",所以看起来是在 OSX 上。 - John Vandenberg
5个回答

15

我想我有同样的问题。因此,一次性下载所有软件包(因为问题没有具体说明)。

启动Python,然后导入软件包,退出Python并升级nltk。将'all'修改为下载特定语料库。我花了一段时间才完成了'all'的下载,我单独下载了framenet_v15,并在之后重新启动了'all'。下载完成后升级nltk。

$ python
>>>import nltk
>>>nltk.download('all')

退出Python

$ pip install --upgrade nltk

5

为了解决这个问题,你应该将文件名改为其他名称,比如nltkXXX.py。同时,确保如果你的目录下存在“nltk.pyc”文件,也要将其删除,因为它是你的代码的字节编译版本,也会被加载。之后,应该就可以正常运行了。


这个答案假设问题的提问者已经创建了一个名为 nltk 的 Python 文件,并且该文件被 Python 解释器首先看到。我认为这是不正确的,因为 import nltk 会自动尝试导入 NLTK.corpus,这意味着真正的 nltk 开始加载。 - John Vandenberg
这可能不是答案,但它解决了 我的 问题。 - Funkatron

3
如果你遇到了“Import NLTK: no module named NLTK corpus”这种错误类型。
请确保你的保存文件名不要叫做“nltk.py”,可以将它重命名为“example.py”或其他名称。
希望这可以帮到你。
谢谢。

3
如果您正在使用最新版本的Python,则尝试使用pip和从此处下载的wheel安装nltk: http://www.lfd.uci.edu/~gohlke/pythonlibs/ 然后在命令提示符中,使用以下命令: pip3 install
这应该可以正确安装nltk。 之后,使用以下命令在Python中检查安装情况: import nltk
并使用以下命令下载所需的nltk数据: nltk.download()

1
感谢您发布这个问题。但你有没有想过为什么Python的setup.py安装程序没有为我们完成这项任务? - R Claven

1
如果您正在使用PyCharm IDE,您应该从IDE自带的工具中安装NLTK [文件->设置->项目解释器->安装(按钮“+”)->安装包]。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接