如何知道Jupyter笔记本中运行的是哪个?

Vic*_*tor 45 python anaconda jupyter jupyter-notebook

我在浏览器中使用Jupyter笔记本进行Python编程,我已经安装了Anaconda(Python 3.5).但是我很确定Jupyter在使用本机python解释器运行我的python命令而不是使用anaconda.如何更改它并使用Anaconda作为翻译?

谢谢!

Ubuntu 16.10 - Anaconda3

小智 64

__CODE__

这将为您提供运行脚本的python的确切版本.例如输出:
__CODE__

  • OP 要求查找正在运行的可执行文件(system/anaconda),而不是哪个版本。P. Camilleri 的答案就是解决方案 (11认同)
  • 应选择此作为已发布问题的答案。 (3认同)

P. *_*eri 40

import sys
sys.executable
Run Code Online (Sandbox Code Playgroud)

会给你翻译.您可以在创建新笔记本时选择所需的解释器.确保将anaconda解释器的路径添加到路径中(最有可能在bashrc/bash_profile中的某个位置).

例如,我的.bash_profile中有以下行:

export PATH="$HOME/anaconda3/bin:$PATH"
Run Code Online (Sandbox Code Playgroud)

  • Conda 文档建议不要像这样添加到 PATH 中。 (2认同)
  • @Confounded你的机器上可能有不同版本的不同解释器。OP 询问的是哪个解释器被调用,而不是哪个版本。 (2认同)

Roh*_*kar 17

 import sys
 print(sys.executable)
 print(sys.version)
 print(sys.version_info)
Run Code Online (Sandbox Code Playgroud)

如下所示: - 当我在CONDA venv之外运行JupyterNotebook时的输出

/home/dhankar/anaconda2/bin/python
2.7.12 |Anaconda 4.2.0 (64-bit)| (default, Jul  2 2016, 17:42:40) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)]
sys.version_info(major=2, minor=7, micro=12, releaselevel='final', serial=0)
Run Code Online (Sandbox Code Playgroud)

下面我在使用命令创建的CONDA Venv中运行相同的JupyterNoteBook时看到 -

conda create -n py35 python=3.5 ## Here - py35 , is name of my VENV
Run Code Online (Sandbox Code Playgroud)

在我的Jupyter笔记本中打印: -

/home/dhankar/anaconda2/envs/py35/bin/python
3.5.2 |Continuum Analytics, Inc.| (default, Jul  2 2016, 17:53:06) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)]
sys.version_info(major=3, minor=5, micro=2, releaselevel='final', serial=0)
Run Code Online (Sandbox Code Playgroud)

如果您已经使用不同版本的Python创建了各种VENV,则可以通过在JupyterNotebook菜单中选择KERNEL >> CHANGE KERNEL来切换到所需的内核... JupyterNotebookScreencapture

还要在现有的CONDA虚拟环境中安装ipykernel -

http://ipython.readthedocs.io/en/stable/install/kernel_install.html#kernels-for-different-environments

来源--- https://github.com/jupyter/notebook/issues/1524

 $ /path/to/python -m  ipykernel install --help
 usage: ipython-kernel-install [-h] [--user] [--name NAME]
                          [--display-name DISPLAY_NAME]
                          [--profile PROFILE] [--prefix PREFIX]
                          [--sys-prefix]
Run Code Online (Sandbox Code Playgroud)

安装IPython内核规范.

可选参数:-h, - help显示此帮助消息并退出--user安装当前用户而不是系统范围--name NAME指定kernelspec的名称.这需要同时拥有多个IPython内核.--display-name DISPLAY_NAME指定kernelspec的显示名称.当您有多个IPython内核时,这很有用.--profile PROFILE指定要加载的IPython配置文件.这可用于创建内核的自定义版本.--prefix PREFIX指定kernelspec的安装前缀.这需要安装到非默认位置,例如conda/virtual-env.--sys-prefix安装到Python的sys.prefix.--prefix ='/ Users/bussonniermatthias/anaconda'的简写.用于conda/virtual-envs.


小智 8

查看Python版本

Jupyter菜单help/about将显示Python版本


Suh*_*ote 5

您可以使用检查python版本

!python -V
Run Code Online (Sandbox Code Playgroud)

Python 3.6.5 :: Anaconda, Inc.

或者

!python --version
Run Code Online (Sandbox Code Playgroud)

Python 3.6.5 :: Anaconda, Inc.


您可以将 Conda 环境添加到您的 jupyter notebook

第 1 步:创建 Conda 环境。

conda create --name firstEnv
Run Code Online (Sandbox Code Playgroud)

步骤 2:使用控制台中显示的命令激活环境。

conda activate firstEnv

conda install -c conda-forge <package-name>
Run Code Online (Sandbox Code Playgroud)

例如

conda install -c conda-forge tensorflow
Run Code Online (Sandbox Code Playgroud)

第 3 步:在您的 jupyter 笔记本上设置此 conda 环境

conda install -c anaconda ipykernel

python -m ipykernel install --user --name=firstEnv
Run Code Online (Sandbox Code Playgroud)

第 4 步:只需检查您的 Jupyter Notebook,即可查看 firstEnv


你可以参考这篇文章

https://medium.com/@nrk25693/how-to-add-your-conda-environment-to-your-jupyter-notebook-in-just-4-steps-abeab8b8d084