更改Jupyter kernelspec以指向anaconda python

itf*_*itf 5 python-3.x anaconda jupyter

我正在使用Anaconda来管理Python和Jupyter。那是:

>> which python
>> /home/.../software/anaconda3/bin/python
Run Code Online (Sandbox Code Playgroud)

>> which jupyter
>> /home/.../software/anaconda3/bin/jupyter
Run Code Online (Sandbox Code Playgroud)

但是Jupyter的python内核似乎指向的是系统版本的Python,而不是Anaconda的本地版本,因为sys.pathJupyter Python 3笔记本中的有所不同。另外,jupyter kernelspec list给出以下内容:

Available kernels:
  ir         /usr/local/share/jupyter/kernels/ir
  matlab     /usr/local/share/jupyter/kernels/matlab
  python3    /usr/local/share/jupyter/kernels/python3
Run Code Online (Sandbox Code Playgroud)

由于文档在1.5.5节中说过,所以这似乎并不完全令人惊讶:

默认情况下,内核规范将位于系统范围内的位置(例如/ usr / local / share / jupyter / kernels)。如果执行--user安装,则内核规范将位于JUPYTER_DATA_DIR位置。

为了个人理智和组织,我希望在命令行中使用的Python版本与Jupyter中访问的版本相同。结果,我认为我应该做的是更改python3的jupyter kernelspec列表,使其指向我想要的Anaconda python版本,即/home/.../software/anaconda3/bin/python。我的问题是:1)确实是我陈述的首选项的最佳解决方案,2)我实际上如何更改python3的jupyter kernelspec条目?不知道是否会出现这种情况,但是我不想使用虚拟环境-我希望命令行和Jupyter的默认版本都是相同的Python版本。

itf*_*itf 5

我最终将其重新发布到 Jupyter Github 问题页面,并被建议删除/usr/local/share/jupyter/kernels/python3. 这允许 Jupyter 使用运行 Jupyter 本身(即 Anaconda)的相同 Python 找到默认的 Python 内核,这对我有用。

你可以找到我的Jupyter的Github的页面后,以及为什么上述解决方案工作的解释在这里