Conda环境没有出现在Jupyter Notebook中
我安装了Anaconda(使用Python 2.7),并在称为tensorflow
的环境中安装了tensorflow
。 我可以在该环境下成功导入Tensorflow。
问题是Jupyter笔记本无法识别我刚刚创build的新环境。 无论从GUI Navigator还是从tensorflow
env的命令行启动Jupyter Notebook,在Python [Root]
菜单中只有一个内核,并且不能导入Tensorflow。 当然,我多次点击该选项,保存文件,重新打开,但这些都没有帮助。
奇怪的是,当我打开Jupyter的首页上的Conda
标签时,我可以看到这两个环境。 但是,当我打开Files
选项卡,并尝试new
的笔记本电脑,我仍然只有一个内核。
我看了这个问题: 使用Jupyter Notebook链接Conda环境但是在我的电脑上没有~/Library/Jupyter/kernels
这样的目录! 这个Jupyter目录只有一个叫做runtime
的子目录。
我真的很困惑。 Conda环境是否应该自动成为内核? (我跟着https://ipython.readthedocs.io/en/stable/install/kernel_install.html手动设置内核,但被告知没有findipykernel
。)
令人讨厌的是,在您的tensorflow
环境中,您可以在该环境下运行jupyter notebook
而无需安装jupyter
。 赶紧跑
(tensorflow) $ conda install jupyter
现在在Jupyter笔记本中可以看到tensorflow
环境,这些Jupyter笔记本是在任何tensorflow
环境中启动的,就像Python [conda env:tensorflow]
。
我不认为其他答案正在工作,conda停止自动设置为jupyter内核的环境。 您需要按照以下方式手动为每个环境添加内核:
source activate myenv python -m ipykernel install --user --name myenv --display-name "Python (myenv)"
如此处所述: http : //ipython.readthedocs.io/en/stable/install/kernel_install.html#kernels-for-different-environments另请参阅此问题 。
@ HarshaManjunath的评论提到,当使用Anaconda3(或者Miniconda3)时,你需要在nb_conda
环境中安装nb_conda
(除了jupyter
):
(py35) $ conda install nb_conda
请注意,这目前不适用于python 3.6环境 。 该软件包的信息确实说有一个python 3.6版本,它只是不工作。
$ conda info nb_conda ... nb_conda 2.0.0 py36_0 --------------------- file name : nb_conda-2.0.0-py36_0.tar.bz2 name : nb_conda version : 2.0.0 build string: py36_0 build number: 0 channel : defaults size : 30 KB arch : x86_64 date : 2016-12-20 license : BSD md5 : 24d433439f2fdd1d27e49c27688c2589 noarch : None platform : linux url : https://repo.continuum.io/pkgs/free/linux-64/nb_conda-2.0.0-py36_0.tar.bz2 dependencies: _nb_ext_conf nb_conda_kernels notebook >=4.2 python 3.6*
要在Jupyter笔记本中使用python 3.6,可以在python 3.6环境下运行jupyter
。 您将无法从Jupyter内看到或切换到其他环境。
$ conda create -n py36_test -y python=3.6 jupyter $ source activate py36_test (py36_test) $ which jupyter /home/schowell/anaconda3/envs/py36_test/bin/jupyter (py36_test) $ jupyter notebook
注意我在这个笔记本上运行Python 3.6.1:
只要在你的新环境中运行conda install ipykernel
,只有这样你才能得到这个env的内核。 即使您在每个envs中安装了不同的版本,它也能正常工作,并且不会再安装jupyter笔记本。 你可以从任何环境启动你的笔记本,你将能够看到新添加的内核。
我遇到了同样的问题,我的新conda环境myenv
不能被选为内核或新的笔记本。 从env内运行jupter notebook
得到了同样的结果。
我的解决scheme,以及我了解Jupyter笔记本如何识别conda-envs和内核:
用conda安装jupyter和ipython到myenv
:
conda install -n myenv ipython jupyter
之后,在任何env之外运行jupter notebook
将myenv
作为内核与我以前的环境一起列出。
Python [conda env:old] Python [conda env:myenv]
启动环境后运行笔记本:
source activate myenv jupyter notebook
隐藏我所有的其他环境内核,只显示我的语言内核:
python 2 python 3 R