【发布时间】:2020-04-14 15:45:49
【问题描述】:
我已经在使用 pipenv 创建的虚拟环境之外安装了 Pillow 包。但是当我尝试在这个环境中为我的 django 项目进行迁移时,它说 Pillow 没有安装并要求安装它。我想我在全球范围内安装了枕头,但 pipenv 虚拟环境无法访问它。我正在使用 python 3.8 并使用 sublime3 作为编辑器。
【问题讨论】:
-
你能从你的venv中打印出sys.path吗?你的全球枕头在哪里?
-
按设计,virtualenvs 无法访问系统范围内安装的模块。要防止这种行为,请在创建 virtualenv 时使用
--system-site-packages。对于 pipenv,我认为标志是--site-packages -
正确。可以按照上面的建议使用 --system-site-packages 重新创建一个新的 python 环境以包含全局包。然后,如果您希望仅在您的环境中使用软件包,请确保在进行 pip 安装之前激活您的环境
-
@AzamatGalimzhanov 我可以在我的 venv 中打印出 sys.path。全局枕头的位置是 c:\Program Files\Python38\Lib\Site-packages,我应该将此路径添加到我的 venv 吗?如何?
-
解决了。我在 pyvenv.cfg 文件中将 include-system-site-packages 更改为 true
标签: python django sublimetext3 pipenv virtual-environment