在Jupyter Notebook中使用Python虚拟环境

时间:2019-12-06 14:13:03

标签: python jupyter-notebook virtual-environment

我经常发现这样做会很有用,但是我不确定有任何方法可以做到这一点。我经常在python项目上工作,在该项目中,我使用一个虚拟环境来启动该项目,并使用Jupyter笔记本启动该项目。在Jupyter笔记本中进行实验时,我开始将库添加到虚拟环境中。问题是如果我跑步

pip freeze > requirements.txt

在我的项目结束时,该文件将包含我的虚拟环境中的jupyter库。有什么方法可以运行Jupyter笔记本(例如在我的基本conda环境中),但可以使用与另一个虚拟环境关联的内核?这似乎是最好的解决方案,但我不确定是否可行?我知道我可能可以做些什么来从冻结的文件中删除这些文件,但这似乎很简单。我看不出有什么方法可以避免在目标虚拟环境中至少安装ipykernel

1 个答案:

答案 0 :(得分:1)

  1. 在Jupyter内核目录下创建一个新目录。如果您不知道在哪里找到它,请在此处(https://jupyter-client.readthedocs.io/en/stable/kernels.html)进行检查。

  2. 使用以下命令创建一个kernel.json文件:

{
 "argv": [ "/path-to-env/myenv/bin/python", "-m", "ipykernel",
          "-f", "{connection_file}"],
 "display_name": "myenv",
 "language": "python"
}
  1. 就是这样!现在,您可以运行jupyter notebook并能够看到使用您的虚拟环境的内核。

这是一个博客,对其进行了更详细的说明:https://www.alfredo.motta.name/create-isolated-jupyter-ipython-kernels-with-pyenv-and-virtualenv/