如何不在每个 conda 环境中安装 Jupyter?

phi*_*ler 6 python conda jupyter

TL/DR:是否真的没有办法只告诉jupyter console在某些 conda 环境中运行,而不首先在该环境中不必要地安装(并因此依赖)Jupyter?

我确实试图让这看起来不完全像咆哮......我希望你看到这里一个实际的问题。


似乎让 Jupyter 在 conda 环境中工作需要

  1. 在您想要使用的每个 conda 环境中安装新的 Jupyter,或者
  2. 在您想要使用的每个 conda 环境中安装 ipykernel(这取决于 jupyter 包...),并从环境中创建一个新内核。

我觉得这有点令人惊讶,因为我不认为 Jupyter 作为项目的要求,而只是作为另一个编辑器/IDE 之类的东西,利用环境。Conda 的目的是管理可重现的依赖关系;Jupyter 应该是在我告诉它的环境中解释代码。由于我想将environment.yml存储在git中并与其他人共享,因此我认为要求他们安装Jupyter没有任何意义;他们甚至可能不会使用它。

然而,它似乎根本不是这样工作的。感觉就像当我想使用 Emacs 来利用环境时,我必须在每个环境中安装一个“emacskernel”包。事情不是这样的。

我想要的是有一个全局安装的 Jupyter,它可以指向不同的环境 - 类似于 Julia REPL 的工作方式julia --project=...(是的,我知道 conda 不是内置的语言包管理器,但是你应该明白这个类比......)。(如果 conda 环境“继承”,即回退到“全局环境”以查找未找到的依赖项,那么这会起作用,并且您可以只使用每个环境中的全局 Jupyter;但据我了解,它们不这样做? )

这有可能吗?我缺少什么?有没有更好的替代方案提供全球 Jupyter + 本地环境?(我必须承认我从未使用过 virtualenv 之类的东西......)


这个较旧的问题似乎涵盖了 pipelinev 的相同主题,但那里没有真正的答案......既没有明确的NO,也没有解释原因。)