如何使用自定义 python 环境创建 IPython/Jupyter 内核

How to create IPython/Jupyter kernel with custom python environment

我有一个虚拟环境,其中包含我需要在笔记本中测试的包。

我按照以下方式让它工作:

> pip install ipykernel

> ipython kernel install --user --name=foo
Installed kernelspec foo in /Users/pi/Library/Jupyter/kernels/foo

> cat /Users/pi/Library/Jupyter/kernels/foo/kernel.json
{
 "argv": [
  "/usr/local/anaconda3/bin/python",
  "-m",
  "ipykernel_launcher",
  "-f",
  "{connection_file}"
 ],
 "display_name": "foo",
 "language": "python"
}

现在我将该文件中的 python 路径编辑为 /path/to/my/virtualenv/bin/python

现在我做 jupyter notebook -> new -> foo,并用 import MyPackage 创建一个测试单元,它成功了!

我的问题是:有没有正确的方法来做到这一点?

(有用 link:https://jakevdp.github.io/blog/2017/12/05/installing-python-packages-from-jupyter/

就我个人而言,我会使用 pipenv

首先创建一个新文件夹并cd到它:

mkdir [name-of-my-python-env]
cd [name-of-my-python-env]

现在安装环境以及您需要的任何其他包:

pipenv install jupyter foo bar

启动笔记本服务器:

pipenv run jupyter notebook

如果您需要添加任何新的依赖项,只需 pipenv install 添加它们并重新启动您的服务器。