多个python安装 - 设置路径变量

时间:2014-11-19 00:04:30

标签: python ipython

我的系统上有几个python安装,在/ usr / lib /我有python2.7,python 3,python3.2。我正在尝试从.9升级我的scipy版本。当我做的时候

sudo pip install --upgrade scipy

它没有说它已经在/usr/local/lib/python3.2/dist-packages中完成了

但是,当我在ipython中导入它时,它会找到旧版本的Scipy:

/usr/lib/python2.7/dist-packages/scipy/__init__.pyc

如何告诉python加载scipy的3.2版本而不是2.7?我相信这与PYTHONPATH变量有关,但我不确定要改变哪一个。

詹姆斯

1 个答案:

答案 0 :(得分:1)

  

如何告诉python加载3.2版本的scipy而不是2.7

每个python版本都管理自己的已安装模块集。我们的想法是调用属于正确python版本的pip可执行文件。

根据您的描述,您似乎已在python2.7解释器中安装了ipython模块,但您的pip可执行文件属于python3.2解释器。

执行python2.7 pip的最简单方法是:

sudo ipython -m pip install --upgrade scipy

但是,这会将作为root的scipy安装到系统文件中,因此通常会干扰程序包管理器安装的版本。

一种可以说是更好的方法是在用户的主目录中安装软件包。

ipython -m pip install --upgrade scipy --user

正如评论中所指出的,最好的方法是熟悉virtualenv

我自己发现anaconda特别有吸引力,因为它提供了一种安装和管理多个python解释器的简洁方法,重点是跨多个平台的科学包。