8

我安装了 Python 3 的 Anaconda,希望能够在 python2 和 3 内核之间快速切换。这是在 OSX 上。

到目前为止,我的步骤涉及:

conda create -p ~/anaconda/envs/python2 python=2.7
source activate python2
conda install ipython
ipython kernelspec install-self
source deactivate

在此之后,我在 python3 IPython 笔记本中有一个 python2 内核可供选择,但是无法启动。

所以我继续修改 /usr/local/share/jupyter/kernels/python2/kernel.json

{
 "display_name": "Python 2",
 "language": "python",
 "argv": [
  "/Users/sonium/anaconda/envs/python2/bin/python",
  "-m",
  "IPython.kernel",
  "-f",
  "{connection_file}"
 ],
 "env":{"PYTHONHOME":"~/anaconda/envs/python2/:~/anaconda/envs/python2/lib/"}
}

现在,当我启动 python2 内核时,它失败了:

ImportError: No module named site
4

2 回答 2

4

显然 IPython 需要明确的路径名,所以没有 '~' 而不是主目录。将 kernel.json 更改为:

{
 "display_name": "Python 2",
 "language": "python",
 "argv": [
  "/Users/sonium/anaconda/envs/python2/bin/python2.7",
  "-m",
  "IPython.kernel",
  "-f",
  "{connection_file}"
 ],
 "env":{"PYTHONHOME":"/Users/sonium/anaconda/envs/python2"}
}
于 2015-04-15T20:43:44.867 回答
1

我在 Win10 中安装 Anaconda 3。我现在专注于 python 3,但我有很多用 python 2 编写的项目。如果我想在 python 环境中的 juypter 中检查它们,它将失败,并显示“内核错误”。解决方案几乎与上面类似,但有所不同。

找到这两个 json 文件的路径是: C:\ProgramData\jupyter\kernels 有时它可能会被隐藏。

另一个你需要检查的路径,在Anaconda中创建一个python2环境后,尝试找到这个路径: C:\Users\username\Anaconda3\envs\python2\python.exe

将其复制到您的 python2 内核 json 文件中,然后它应该可以工作。

于 2015-10-07T22:39:15.887 回答