菜鸟笔记
提升您的技术认知

使用Anaconda虚拟环境作为Jupyter notebook内核

在使用Anaconda时,出于隔离环境的目的,往往会建立一个虚拟环境。在使用PyCharm或VScode作为编辑器时,可以方便的切换解释器。

在使用Jupyter Notebook作为编辑器,如何使用Anaconda的虚拟环境进行编程呢?

安装内核

步骤如下:

  1. 创建虚拟环境。打开Anaconda Prompt,输入命令conda create -n foo python=3.7

  2. 切换到foo虚拟环境。在Anaconda Prompt中输入conda activate foo

    (base) PS C:\Users\Administrator> conda activate foo
    (foo) PS C:\Users\Administrator>
    
  3. foo虚拟环境中安装Jupyter内核包ipykernel。在Anaconda Prompt中输入conda install -n foo ipykernel

    (foo) PS C:\Users\Administrator> conda install -n foo ipykernel
    
  4. 安装内核。在Anaconda Prompt中输入python -m ipykernel install --user --name foo --display-name "conda_foo"。其中foo为虚拟环境的名称,"conda_foo"为内核的显示名称。

    (foo) PS C:\Users\Administrator> python -m ipykernel install --user --name foo --display-name "conda_foo"
    Installed kernelspec foo in C:\Users\Administrator\AppData\Roaming\jupyter\kernels\foo
    
  5. 验证。运行Jupyter NotebookJupyter Lab,点击新建按钮可以发现增加了一个conda_foo内核。

使用conda_foo内核新建一个notebook,导入一个Anaconda base环境中已参照而foo虚拟环境中未安装的包,比如numpy,此时抛出异常。

删除内核

  1. 查看已安装内核。在命令行中运行命令jupyter kernelspec list

    PS C:\Users\Administrator> jupyter kernelspec list
    Available kernels:
      foo        C:\Users\Administrator\AppData\Roaming\jupyter\kernels\foo
      python3    c:\users\administrator\appdata\local\programs\python\python37\share\jupyter\kernels\python3
    
  2. 删除内核。在命令行中运行命令jupyter kernelspec remove foo。注意!命令中的参数是内核的名称foo

     PS C:\Users\Administrator> jupyter kernelspec remove foo
     Kernel specs to remove:
      foo                   C:\Users\Administrator\AppData\Roaming\jupyter\kernels\foo
     Remove 1 kernel specs [y/N]: y
     [RemoveKernelSpec] Removed C:\Users\Administrator\AppData\Roaming\jupyter\kernels\foo
    
  3. 验证。在命令行中运行命令jupyter kernelspec list

    PS C:\Users\Administrator> jupyter kernelspec list
    Available kernels:
      python3    c:\users\administrator\appdata\local\programs\python\python37\share\jupyter\kernels\python3
    

此时,刷新Jupyter NotebookJupyter Lab,可以观察到原来新增的foo内核已经移除。