Python 找不到模块 NLTK

Posted

技术标签:

【中文标题】Python 找不到模块 NLTK【英文标题】:Python can't find module NLTK 【发布时间】:2015-03-12 21:36:59 【问题描述】:

我按照这些说明 http://www.nltk.org/install.html 在我的 mac (10.6) 上安装 nltk 模块 我已经安装了 python 2.7,但是当我打开 IDLE 并输入 import nltk 它给了我这个错误

Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    import nltk
ImportError: No module named nltk

问题是模块安装在另一个python版本2.6中。如何在 python 2.7 版中安装包?我尝试了各种答案中建议的一些解决方案,例如我尝试在终端中输入这个

export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/site-packages

然后用命令再次安装NLTK

sudo pip install -U nltk

但我收到消息:/Library/Python/2.6/ 中的要求已经是最新的。所以显然命令行export PYTHONPATH 没有做任何事情(它仍然尝试在 2.6 中安装包)或者(更有可能)我不理解该命令行的含义/功能。我究竟做错了什么?

【问题讨论】:

Apple 在 OS X 中发布了自己的 Python 版本,这就是 pip 感到困惑的原因。可能有一些方法可以将它安装到您的 python2.7 安装中,但好的解决方案是使用 virtualenv。 ***.com/questions/19642368/… 【参考方案1】:

我在使用 Intel MacBook 时遇到了类似的问题。

固定为

    确保路径中的python bin目录 我的是/Users/&lt;user&gt;/Library/Python/3.9/bin 重启电脑

请注意,只是重新启动终端并没有帮助

【讨论】:

【参考方案2】:

安装后只需重新启动 Jupyter Notebook 或您正在使用的任何东西... 它有效...

【讨论】:

【参考方案3】:

试试这个

pip install --user -U nltk

【讨论】:

【参考方案4】:

在我的 Mac 上,我安装了两个不同版本的 Python 3:Python 3.6 和 Python 3.7。我在$PATH 中安装了nltk,其中包含Python 3.7:

$ pip3 install nltk
$ which python3
/Library/Frameworks/Python.framework/Versions/3.7/bin/python3
$ echo $PATH
/Library/Frameworks/Python.framework/Versions/3.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin

但 Python 3.6 中缺少 nltk。解决方案:安装nltk 3.6版本也一样。

$ echo $PATH
/Library/Frameworks/Python.framework/Versions/3.6/bin:/Library/Frameworks/Python.framework/Versions/3.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
$ pip3 install nltk
Collecting nltk
  Using cached https://files.pythonhosted.org/packages/6f/ed/9c755d357d33bc1931e157f537721efb5b88d2c583fe593cc09603076cc3/nltk-3.4.zip
Requirement already satisfied: six in /Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages (from nltk) (1.12.0)
Collecting singledispatch (from nltk)
  Using cached https://files.pythonhosted.org/packages/c5/10/369f50bcd4621b263927b0a1519987a04383d4a98fb10438042ad410cf88/singledispatch-3.4.0.3-py2.py3-none-any.whl
Installing collected packages: singledispatch, nltk
  Running setup.py install for nltk ... done
Successfully installed nltk-3.4 singledispatch-3.4.0.3

【讨论】:

【参考方案5】:

在 OS X 上,您可以安装多个 Python,因此请先进行调查:

$ which python python2 python3
/usr/bin/python
/usr/local/bin/python3

$ which pip pip2 pip3
/usr/local/bin/pip
/usr/local/bin/pip2
/usr/local/bin/pip3

/usr/bin 中的所有内容都是内置的,/usr/local/bin 中的所有其他内容都是由 Homebrew 或其他一些包管理器外部安装的。

如果您使用来自/usr/localpippip3,那么您必须使用相同的Python 实例,否则它们是不同的实例。

只需通过pip安装即可:

pip install nltk

或者对于 Python 3:

pip3 install nltk

然后从 /usr/local/bin 运行正确的 Python 实例或更新您的 PATH 系统变量。

【讨论】:

【参考方案6】:

确保您安装的是 Mac 版的实际 Python,而不是控制台内置的 Python。然后,通过执行this 脚本安装 pip。然后跳到说明的第 3 部分并从那里开始。

【讨论】:

【参考方案7】:

我会使用 virtualenv,但如果你真的想从终端使用它,我建议将你的导出语句添加到 ~/.bashrc

【讨论】:

以上是关于Python 找不到模块 NLTK的主要内容,如果未能解决你的问题,请参考以下文章

调用 NLTK 并在 databricks pyspark 上找不到“punkt”错误

Python升级找不到Tkinter模块

解决找不到pip模块的问题

Python 找不到已安装的模块('slackclient')

找不到资源 u'tokenizers/punkt/english.pickle'

用pyinstaller打包出现找不到指定的模块?