setuptools 总是默认安装在 Python 中吗?

Int*_*rer 8 python pip setuptools setup.py

总是setuptools安装Python吗?

我想在脚本setuptools之外的运行时调用setup.py

换句话说,我应该包含setuptools在我的包的requirements.txtsetup.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),默认安装的包也是pipsetuptools


研究

setuptools 应该包含在 Python 的 setup_requires 中吗?

通知setuptools不应包含在 中setup_requires,但没有谈论将其包含在运行时使用的包要求中。

Lio*_*hen 5

长话短说

正式地说,不。通常,是。

setuptools 不是 python vanilla 代码库的一部分,因此不是vanilla 模块

python.org 安装程序或 ma​​c homebrew 会为您安装它,但是如果有人自己编译 python 或将其安装在某些 Linux 发行版上,他可能无法获得它,并且需要自己安装它