繁体   English   中英

如何将默认包添加到所有新的 python 的 venvs

[英]How add default packages to all new python's venvs

我通过asdf版本管理器使用 Python 和 pip,在我的旧 PC 中,当我创建一个新的 venv 时,它已经带有一些默认包。 我现在使用的是 python (3.9.12) 和 pip (22.0.4) 的较新版本,它没有提供基本和必要的东西,例如gnureadline ,以便能够在 python 的shell。不得不在所有新的 venvs 中再次安装它真的很烦人,我试图避免使用别名来创建 venv 并在其中安装我想要的东西。 有没有办法为所有的venvs设置一些默认包?

有一个选项:

--system-site-packages
                      Give the virtual environment access to the system
                      site-packages dir.

因此,如果您使用python3 -m venv --system-site-packages.venv那么您可以在系统级别安装您希望对所有环境可用的软件包。 您必须对在系统级别安装的软件包保持卫生。

如果您的发行版上的系统 python 是一团糟,并且您无法从中删除您不想在 venvs 中看到的内容,那么您将需要寻找另一个选项。

一种可能性是将通用包安装到某个目标目录:

python3 -m pip install dep1 dep2 --target=/path/to/common

然后使这个包目录始终可见:

export PYTHONPATH=/path/to/common

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM