我在 OS X 10.10 中使用 pip 安装了 iPython,它给了我“ipython”和“ipython2”命令,它们运行良好,但使用 OS X 的默认 python 版本 2.7.9。我下载并安装了最新版本的 Python3.4,可以使用命令“python3”加载它,但找不到让 iPython 使用此版本的 python 的方法。 iPython 网站指出该包可用于 python 3.3 及更高版本,但我找不到任何关于如何更改所用默认 python 版本的说明。
到目前为止,我发现 iPython 的 jupyter 包在/usr/local/share/jupyter/kernels/中有一个内核规范,它只是一个名为“python2”的文件夹,其中包含一个指向系统 python 的 json 文件2.7.6,但将其更改为指向新的 python3.4 安装不起作用。我的猜测是此配置适用于 ipython 笔记本。
我也尝试过这里的方法:ipython reads wrong python version
这样做时,我在/user/local/bin/中复制了 ipython2 命令,并将其编辑为使用位于/Library/Frameworks/Python.framework/Versions/3.4/bin/python3 的 python3 解释器,但是,这给了我一个错误“ImportError: No module named 'IPython'”,这表明 python3 安装没有安装 ipython。
为了解决这个问题,我尝试卸载 ipython 并使用 pip 重新安装它,但它只针对系统的 Python 2.7 安装,对 python3 没有任何作用。
有谁知道如何配置 iPython 以使用不同的 python 版本,或者甚至为 python3 安装单独的 ipython 安装?最终,根据我的需要快速来回切换会很好。
请您参考如下方法:
我刚刚找到了答案。从本质上讲,这源于不了解 python 安装布局以及安装的解释器之间如何分隔资源。似乎每个 python 版本都有自己的工具库,我在系统上安装的当前“pip”命令被映射为与 python 2.7 一起使用,因此它管理的所有库、工具和其他细节仅对 python 可用2.7.这包括 iPython。
我认为安装 python3 将使所有这些库在默认情况下可用于新的解释器,但系统似乎将它们全部分开(这是有道理的)。这里的主要问题是继续使用针对旧安装的“pip”,而不是 python3 中包含的新“pip3”命令。通过使用 pip3 重新安装 iPython,我能够正确安装 iPython3。
不幸的是,此设置意味着需要重新下载其他库,但这并不难。
事后看来这似乎是一个微不足道的问题,但这让我完全陷入困境。我希望这对遇到这种情况的其他人有所帮助。
