Int*_*rer 8 python pip setuptools setup.py
总是setuptools安装Python吗?
我想在脚本setuptools之外的运行时调用setup.py。
换句话说,我应该包含setuptools在我的包的requirements.txt和setup.py列表中install_requires吗?
背景
我注意到在创建新的虚拟环境(使用 Python 3.7.9)时,默认安装了pip和:setuptools
python -m venv venv
source ./venv/bin/activate
pip list
Package Version
---------- -------
pip 20.1.1
setuptools 47.1.0
Run Code Online (Sandbox Code Playgroud)
这记录在此处:创建虚拟环境:
venv 在 Python 3.3 及更高版本中默认可用,并将 pip 和 setuptools 安装到 Python 3.4 及更高版本中创建的虚拟环境中。
即使在 Python 3.7.6 的普通版本中(通过安装pyenv),默认安装的包也是pip和setuptools。
研究
setuptools 应该包含在 Python 的 setup_requires 中吗?
通知setuptools不应包含在 中setup_requires,但没有谈论将其包含在运行时使用的包要求中。
长话短说
正式地说,不。通常,是。
setuptools 不是 python vanilla 代码库的一部分,因此不是vanilla 模块。
python.org 安装程序或 mac homebrew 会为您安装它,但是如果有人自己编译 python 或将其安装在某些 Linux 发行版上,他可能无法获得它,并且需要自己安装它。