使用 pipenv 创建虚拟环境

create virtual environment using pipenv

我想要一个模块的两个版本,一个版本在 pip 中(例如:新版本),另一个版本(例如:旧版本)在 pipenv 中,但是当我使用 pipenv 安装包时,它也可以工作使用 pip,我不知道如何在 pycahrm IDE 中使用 pipenv 创建不同的环境,这些包不会安装在 pip 中。

并且 pycharm 每次我使用 pipenv 执行命令时都会通知我此代码:

友情提示:Pipenv 发现自己 运行 在虚拟环境中,因此它将自动使用该环境,而不是为任何项目创建自己的环境。你可以设置 PIPEN V_IGNORE_VIRTUALENVS=1 强制 pipenv 忽略该环境并创建自己的环境。您可以设置 PIPENV_VERBOSITY=-1 来抑制此警告。

如何将 pipenv_ignore_virtualenvs 设置为 1?

是否可以同时使用两种不同的环境?

基本上,你不能,因为它不依赖于应该安装软件包的 pip(或 pipenv 或 poetry)。 Python 将根据 sys.prefixsys.prefix_exec 的值在任何配置的位置安装软件包,如 here.

所述

如果你想管理一个依赖的两个不同版本,我能想到的一件事是有两个独立的虚拟环境,每个都有自己的依赖。然后,您可以根据需要在环境之间切换。但是你不能在同一个环境中安装同一个包的两个版本(除非你修改它的源并在本地安装它),并且在 pip 或任何依赖安装工具之间切换肯定不会帮助你。

Here 是一篇很好的文章,它解释了激活虚拟环境时会发生什么,以及为什么它不依赖于 pip 的安装位置