在 Conda 环境中安装 python 内核
Posted
技术标签:
【中文标题】在 Conda 环境中安装 python 内核【英文标题】:Installing python kernel in a Conda environment 【发布时间】:2018-08-14 06:01:15 【问题描述】:我刚刚开始在我的开发过程中使用 jupyter notebook。我首先创建了一个新的 python 环境:
$ conda create -n testenv
然后我激活它:
$ source activate testenv
并安装python内核模块:
$ pip install ipykernel
这就是模糊的开始。我只想专门为我的活动环境创建一个新内核。按照文档,我做到了:
$ python -m ipykernel install --user --name testenv --display-name "Python (testenv)"
我相信我刚刚为 testenv 环境创建了一个新的 Python 内核,以便在 Jupyter Notebook 中使用。现在,我想确认此信息并检查:
$ jupyter kernelspec list
Available kernels:
testenv /home/user/.local/share/jupyter/kernels/testenv
python2 /home/user/miniconda2/share/jupyter/kernels/python2
$ conda env list
# conda environments:
#
base /home/user/miniconda2
testenv * /home/user/miniconda2/envs/testenv
我希望看到我的内核安装在 testenv 环境中,类似于:
/home/user/miniconda2/envs/testenv/kernels/testenv
我看不到环境和内核是如何联系在一起的,我该如何确认这些信息。
【问题讨论】:
【参考方案1】:问题在于,当您创建空环境时,它绝对不会安装任何包,即使是 pip 和 Python。因此,当您使用 pip 安装 ipykernel
时,您使用的是基础环境中的 pip。你需要用pip
和python
创建环境
conda create -n testenv python
你可以通过输入来检查这个
which pip
创建空白环境之后。
最后,如果可能的话,您应该使用conda
安装所有软件包,包括 ipykernel。
【讨论】:
好的,谢谢你的建议。我刚刚尝试过:conda create -n testenv python ipykernel
。现在我在 testenv 环境中有一个 python 和 pip 命令。但是,最后我的内核仍然位于同一个旧位置,/home/user/.local/share/jupyter/kernels/testenv
。我仍然不明白这个内核与我刚刚创建的环境有什么关系,这是问题的中心点。
在尝试此文件之前,您是否从之前的尝试中删除了该文件?
是的,我使用$ conda env remove -n testenv
清理了环境,并从内核文件夹中硬删除了 testenv
那我不知道为什么那个文件会被放回去,它不会发生在我的 Mac 上
/Users/bryan/miniconda3/envs/thermohw/share/jupyter/kernels/python3
【参考方案2】:
首先你需要使用以下内容:
conda create -n testenv
你应该使用之后:
conda activate testenv
conda install ipykernel
python3 -m ipykernel install --user --name condaenv --display-name "Python3 (testenv)"
完成此操作后,您可以使用jupyter notebook
启动笔记本并打开任何.ipynb
笔记本。在该笔记本中,选择菜单 Kernel > Change kernel > Python3 (condaenv) 以激活 conda 环境内核。
【讨论】:
以上是关于在 Conda 环境中安装 python 内核的主要内容,如果未能解决你的问题,请参考以下文章
有没有办法在同一个 conda 环境中安装 python 3 和 python 2?
在centos 7 中 conda 环境和Python2.7 中安装远程jupyter