已安装的Python模块—Python可以';我找不到他们

已安装的Python模块—Python可以';我找不到他们,python,numpy,pandas,Python,Numpy,Pandas,这是一个初学者python安装问题。这是我第一次尝试安装和调用软件包。我已经安装了pip,并尝试安装了两个模块-numpy和pandas 在终端中,我运行了以下命令: sudo pip install numpy sudo pip install pandas 两个命令都返回了一条成功消息。以下是pandas成功消息(这是我安装的第二个软件包,仍在我的终端历史记录中): pip在安装numpy后返回类似消息 现在,当我启动python并尝试使用以下命令调用它时: import pandas

这是一个初学者
python
安装问题。这是我第一次尝试安装和调用软件包。我已经安装了
pip
,并尝试安装了两个模块-
numpy
pandas

在终端中,我运行了以下命令:

sudo pip install numpy

sudo pip install pandas
两个命令都返回了一条成功消息。以下是
pandas
成功消息(这是我安装的第二个软件包,仍在我的终端历史记录中):

pip
在安装
numpy
后返回类似消息

现在,当我启动
python
并尝试使用以下命令调用它时:

import pandas
我收到以下错误消息:

回溯(最近一次呼叫最后一次):
文件“”,第1行,在
ImportError:没有名为pandas的模块
当我尝试
numpy
时也是如此


谁能告诉我我做错了什么

argh。你的路径上有两条蟒蛇,它们是同一个版本?不要那样做

pip、easy install等与特定的python安装相关联,默认情况下将使用该python。因此,如果您有一个系统提供的python和一个系统提供的easy_install(或者自己使用系统python安装easy_install),那么默认情况下easy_install将为系统python安装软件包

imho,避免这种混乱的最好方法是在该版本(可能是2.7)中使用系统python,对于其他版本,在安装时使用
make-alt-install
,这将为您提供类似python3.1之类的可执行文件。如果确实需要更换系统提供的版本,请卸载它

一旦你做到了。每个python都将有一个不同的名称(以版本结尾),而
python
仍将是系统名称

接下来,当您安装easy_install时,您会注意到存在特定于版本的版本(例如,
easy_install-2.7
)。用那些。如果缺少一个,则使用适当的python安装distutils(例如使用
python3.1
,您将获得一个
easy\u安装-3.1
)。不幸的是,每次这样做(iirc)都会覆盖未版本化的
easy\u install
,因此永远不要使用它-始终使用版本化的

或者,您不能为系统版本以外的任何版本安装easy_install或pip,然后始终使用virtualenv。virtualenv将允许您指定一个python版本(因此您可以对所有安装的python使用系统virtualenv),然后为您使用的python安装easy\u install/pip。因此,一旦进入虚拟环境,一切都会正常工作

我刚刚意识到我对pip没有太多的经验,所以我实在帮不上忙(除了注意到virtualenv确实提供了它)(关于哪个更好:过去pip的维护更好;我认为现在最新的distutils/easy_安装和pip一样好,但pip还有一些我从未使用过的特性)


免责声明:以上是从开发lepl获得的经验,它运行在2.6到3.2版本,所以我需要在所有这些版本上测试它。据我所知,我上面描述的内容对我来说很有用,但我对python/easy_install/pip没有深入的了解,所以我在合理化/描述事物时可能会有一些错误(换句话说,我写这篇文章是为了以防万一,但我有点担心我有一个错误-如果有,请有人纠正我)。

这样,我解决了问题(我可以帮你):


不,不一定。但如果你是,你需要确保在导入工作之前激活virtualenv。但请忽略我的评论,因为它似乎不相关。请注意,有什么特别的原因不能只使用普通的软件包管理器安装这些?@Lattyware-承认是初学者-这我应该使用软件包管理器吗?在线阅读,似乎
pip
easy\u install
更受欢迎。很大程度上取决于您使用的发行版。对我来说,这是一个
sudo pacman-s python numpython
和抓取AUR熊猫的例子。有没有可能您已经安装了两个版本的python,并且正在安装to其中一个然后检查另一个(我自己也去过那里;)你确定了操作系统是什么吗?
import pandas
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named pandas
$ sudo apt-get install python-pandas
$ sudo apt-get install python-numpy