我安装了Anaconda(使用Python 2.7),并在一个名为Tensorflow的环境中安装了Tensorflow。我可以在这个环境中成功导入Tensorflow。

问题是Jupyter Notebook无法识别我刚刚创建的新环境。无论我是从GUI Navigator还是tensorflow env中的命令行启动Jupyter Notebook,菜单中只有一个名为Python [Root]的内核,并且不能导入tensorflow。当然,我多次点击这个选项,保存文件,重新打开,但这些都没有帮助。

奇怪的是,当我打开Jupyter首页上的Conda标签时,我可以看到这两个环境。但是当我打开文件选项卡,并尝试新建一个笔记本时,我仍然只有一个内核。

我看了这个问题: 连接Conda环境与Jupyter Notebook 但是在我的电脑上没有~/Library/Jupyter/kernels这样的目录!这个Jupyter目录只有一个称为runtime的子目录。

我真的很困惑。Conda环境应该自动成为内核吗?(我在https://ipython.readthedocs.io/en/stable/install/kernel_install.html上手动设置了内核,但被告知没有找到ipykernel。)


当前回答

我在使用vscode服务器时遇到了这个问题。 在名为“base”的conda环境中,我安装了1.2.0版本的opennmt-py,但我想在conda环境“opennmt2”中运行jupyter notebook,其中包含使用opennmt-py 2.0的代码。 我通过在conda(opennmt2)中重新安装jupyter解决了这个问题。

conda install jupyter

重新安装后,在opennmt2环境中执行jupyter notebook将执行新安装的jupyter

where jupyter 
/root/miniconda3/envs/opennmt2/bin/jupyter
/root/miniconda3/bin/jupyter

其他回答

我们在这个问题上做了很多努力,以下是对我们有效的方法。如果你使用conda-forge通道,确保你使用的是从conda-forge更新的包是很重要的,即使是在你的Miniconda根环境中。

所以安装Miniconda,然后做:

conda config --add channels conda-forge --force
conda update --all  -y
conda install nb_conda_kernels -y
conda env create -f custom_env.yml -q --force
jupyter notebook

你的自定义环境将作为可用的内核显示在Jupyter中,只要你的custom_env中列出了ipykernel以供安装。Yml文件,就像这个例子:

name: bqplot
channels:
- conda-forge
- defaults
dependencies:
- python>=3.6
- bqplot
- ipykernel

为了证明它适用于许多自定义环境,这里有一个Windows屏幕截图:

添加conda环境到Jupyter:

在Anaconda提示中:

执行conda activate <env name> 执行conda install -c anaconda ipykernel命令 执行python -m ipykernel install——user——name=<env name> **在conda 4.8.3 4.11.0上测试

我不得不运行前3个答案中提到的所有命令来让它工作:

conda install jupyter
conda install nb_conda
conda install ipykernel
python -m ipykernel install --user --name mykernel

首先你需要激活你的环境。

pip install ipykernel

接下来,您可以通过输入以下命令将虚拟环境添加到Jupyter:

python -m ipykernel install --name = my_env

我只是想补充之前的答案:如果安装nb_conda_kernels, ipywidgets和ipekernel不能工作,请确保您的Jupyter版本是最新的。我的envs在一切正常工作一段时间后突然停止显示,并在我简单地通过anaconda navigator更新jupyter后恢复工作。