Python 找不到模块 NLTK

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/27947414/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-19 02:30:23  来源:igfitidea点击:

Python can't find module NLTK

pythonmacospython-2.7pipnltk

提问by Foxsquirrel

I followed these instructions http://www.nltk.org/install.htmlto install nltk module on my mac (10.6) I have installed python 2.7, but when I open IDLE and type import nltkit gives me this error

我按照这些说明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

The problem is the module is installed in another python version, 2.6. How can I install the package in python version 2.7? I tried some of the solutions suggested in various answers, for example I tried typing this in the terminal

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

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

and then installed NLTK again with the command

然后使用命令再次安装NLTK

sudo pip install -U nltk

but I get the message: Requirement already up-to-date in /Library/Python/2.6/. So apparently the command line export PYTHONPATHdidn't do anything (it still tries to install the package in 2.6) OR (more likely) I didn't understand the meaning/functioning of that command line. What am I doing wrong?

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

回答by erip

I would use a virtualenv, but if you really want to use it from the terminal, I'd recommend adding your export statement to ~/.bashrc

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

回答by Malik Brahimi

Make sure you install the actual Python for Mac, not the one built into the console. Then, install pip by executing thisscript. Then skip to part 3 of the instructions and go from there.

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

回答by kenorb

On OS X you could have multiple installation of Python, so investigate it first:

在 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

All within /usr/binare built-in and all other in /usr/local/binare external installed by Homebrew or some other package manager.

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

If you're using pipor pip3from /usr/local, then you've to use the same Python instance, otherwise they're different instances.

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

Just install it via pip:

只需通过pip以下方式安装它:

pip install nltk

or for Python 3:

或对于 Python 3:

pip3 install nltk

then run the right Python instance from /usr/local/binor update your PATHsystem variable.

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

回答by user2314737

On my mac I had two different versions of Python 3 installed: Python 3.6 and Python 3.7. I had installed nltkhaving Python 3.7 in my $PATH:

在我的 Mac 上,我安装了两个不同版本的 Python 3:Python 3.6 和 Python 3.7。我已经安装了nltkPython 3.7 在我的$PATH

$ 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

But nltkwas missing for Python 3.6. Solution: install nltkalso for version 3.6.

但是nltk在 Python 3.6 中丢失了。解决方案: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