簡體   English   中英

如何知道 Jupyter notebook 中運行的是哪個 Python?

[英]How to know which Python is running in Jupyter notebook?

我在瀏覽器中使用 Jupyter notebook 進行 Python 編程,我已經安裝了 Anaconda (Python 3.5)。 但我很確定 Jupyter 正在使用本機 python 解釋器而不是 anaconda 運行我的 python 命令。 如何更改它並使用 Anaconda 作為解釋器?

from platform import python_version

print(python_version())

這將為您提供運行腳本的確切版本的 python。 例如輸出:

3.6.5
import sys
sys.executable

會給你翻譯。 您可以在創建新筆記本時選擇所需的解釋器。 確保將 anaconda 解釋器的路徑添加到您的路徑中(最有可能在您的 bashrc/bash_profile 中的某個位置)。

例如,我曾經在我的 .bash_profile 中有以下行,這是我手動添加的:

export PATH="$HOME/anaconda3/bin:$PATH"

編輯:如評論中所述,這不是將 anaconda 添加到路徑的正確方法。 引用 Anaconda 的文檔,這應該在安裝后使用conda init

我應該將 Anaconda 添加到 macOS 還是 Linux PATH?

我們不建議手動將 Anaconda 添加到 PATH。 在安裝過程中,你會被問到“你希望安裝程序通過運行 conda init 來初始化 Anaconda3 嗎?” 我們建議“是”。 如果您輸入“no”,則 conda 根本不會修改您的 shell 腳本。 為了在安裝過程完成后進行初始化,首先運行source <path to conda>/bin/activate然后運行conda init

import sys
print(sys.executable)
print(sys.version)
print(sys.version_info)

如下所示:- 當我在 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)
 

當我在使用命令創建的 CONDA Venv 中運行相同的 JupyterNoteBook 時,如下所示 -

conda create -n py35 python=3.5 ## Here - py35 , is name of my VENV

在我的 Jupyter Notebook 中,它打印:-

/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)

此外,如果您已經使用不同版本的 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]

安裝 IPython 內核規范。

可選參數:-h, --help 顯示此幫助消息並退出 --user 為當前用戶而不是系統范圍安裝 --name NAME 指定內核規范的名稱。 這需要同時擁有多個 IPython 內核。 --display-name DISPLAY_NAME 指定內核規范的顯示名稱。 當您有多個 IPython 內核時,這很有用。 --profile PROFILE 指定要加載的 IPython 配置文件。 這可用於創建內核的自定義版本。 --prefix PREFIX 指定內核規范的安裝前綴。 這需要安裝到非默認位置,例如 conda/virtual-env。 --sys-prefix 安裝到 Python 的 sys.prefix。 --prefix='/Users/bussonniermatthias/anaconda' 的簡寫。 用於 conda/virtual-envs。

您可以使用檢查python版本

!python -V

Python 3.6.5 :: Anaconda, Inc.

或者

!python --version

Python 3.6.5 :: Anaconda, Inc.


您可以將 Conda 環境添加到您的 jupyter notebook

第 1 步:創建 Conda 環境。

conda create --name firstEnv

步驟 2:使用控制台中顯示的命令激活環境。

conda activate firstEnv

conda install -c conda-forge <package-name>

例如

conda install -c conda-forge tensorflow

第 3 步:在您的 jupyter 筆記本上設置此 conda 環境

conda install -c anaconda ipykernel

python -m ipykernel install --user --name=firstEnv

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


你可以參考這篇文章

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

假設您有錯誤的后端系統,您可以通過在 jupyter 數據路徑jupyter --pathskernels文件夾中創建新的或編輯現有的kernel.json來更改后端kernel 您可以擁有多個內核(R、Python2、Python3(+virtualenvs)、Haskell),例如您可以創建一個Anaconda特定內核:

$ <anaconda-path>/bin/python3 -m ipykernel install --user --name anaconda --display-name "Anaconda"

應該創建一個新內核:

<jupyter-data-dir>/kernels/anaconda/kernel.json

{
    "argv": [ "<anaconda-path>/bin/python3", "-m", "ipykernel", "-f", "{connection_file}" ],
    "display_name": "Anaconda",
    "language": "python"
}

您需要確保在 anaconda 發行版中安裝了ipykernel包。

通過這種方式,您可以在內核之間切換,並使用不同的內核擁有不同的筆記本。

查看 Python 版本

Jupyter 菜單 help/about 將顯示 Python 版本

為 Jupyter Notebooks 創建虛擬環境

最小的 Python 安裝是

sudo apt install python3.7 python3.7-venv python3.7-minimal python3.7-distutils python3.7-dev python3.7-gdbm python3-gdbm-dbg python3-pip

然后就可以創建和使用環境了

/usr/bin/python3.7 -m venv test
cd test
source test/bin/activate
pip install jupyter matplotlib seaborn numpy pandas scipy
# install other packages you need with pip/apt
jupyter notebook
deactivate

你可以為 Jupyter 制作一個內核

ipython3 kernel install --user --name=test

檢查 Python 版本

導入系統打印(sys.version)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM