为什么只有在使用"pipenv-run papermill"时才能在jupyter笔记本中导入包



在一个必须运行一些Jupyter笔记本电脑的项目中,我使用pipenv创建了一个虚拟环境,并安装了一些软件包(请注意,我使用了--site-packages标志(。

虽然现在我可以使用pipenv run papermill ...运行笔记本电脑,但由于某些ModuleNotFoundError例外,我无法使用pipenv runpipenv shell从Jupyter运行它们。

特别是,在第二种情况中注意到的模块是仅安装在虚拟环境中的模块,而不是从全局站点继承的模块。

事实上,如果我检查sys.path,我可以看到这两种情况的区别:在第二种情况下没有~/.local/share/virtualenvs/...条目。

为什么我会遇到这个问题,如何解决?(如果可能的话,我宁愿不要用virtualenv的其他内核污染我的~/.local/share/jupyter/kernels(。

正如这里所建议的,您还需要确保内核也在venv:下

python -c "import IPython"
python -m ipykernel install --user --name=my-virtualenv-name

然后切换名为"的内核;我的虚拟名字";在jupyter用户界面中

相关内容

  • 没有找到相关文章

最新更新