我在安装Python 3中的包时遇到了麻烦。

我总是用setup.py install安装包。但是现在,当我尝试安装anicolors包时,我得到:

importerror "No Module named Setuptools"

我不知道该怎么做,因为我过去没有安装安装工具。尽管如此,我仍然能够使用setup.py install安装许多包,而不需要setuptools。为什么我现在要安装工具?

我甚至不能安装setuptools,因为我有Python 3.3和setuptools不支持Python 3。

为什么我的安装命令不再工作了?


当前回答

当我的pip requirements.txt文件包含一个使用诗词构建的可编辑库并包含一个pyproject时,我就遇到了这个问题。toml文件。遵循setuptools的文档,我的解决方案是将setuptools添加到pyproject中的构建系统需求中。Toml文件如下:

[build-system]
requires = ["poetry-core>=1.0.0", "setuptools"]
build-backend = "poetry.core.masonry.api"

其他回答

第一步#1 你必须安装setuptools

在Linux上: pip install -U pip setuptools

在Mac OS上: pip install -U pip setuptools

在Windows上: python -m pip install -U pip setuptools

第二步:

确保您已使其可访问(使其在环境变量中可用)

在Linux上 导出路径= " INSTALLATIONDIRECTORY: $路径”

在Mac OS上 对不起,我不知道。

在Windows上 打开开始搜索,输入“env”,然后选择“编辑系统环境变量” 点击“环境变量”按钮。 根据需要设置环境变量。New按钮添加了一个额外的变量。 选择“OK”,关闭所有对话框。您的更改被保存!

我在安装pyunicorn时遇到了这样的问题。我想在谷歌Colab上安装它。我试着直接从Github安装pyunicorn,它为我工作。以我为例,它是这样的:

pip install git+https://github.com/pik-copan/pyunicorn.git#egg=pyunicorn

你的setup.py文件需要setuptools。一些Python包过去使用distutils进行分发,但现在大多数使用setuptools,这是一个更完整的包。这里有一个关于它们之间区别的问题。

在Debian上安装setuptools

sudo apt-get install python3-setuptools

对于较旧版本的Python (Python 2.x):

sudo apt-get install python-setuptools

在尝试安装socketIO时,我遇到了同样的问题。在我的系统(Windows 11)中,setupTools出现了两次。在C:\Program Files\Python310\Lib\ site-packages\和c:\ users \user\ appdata \漫游\ python \ python310 \site-packages\ 不得不卸载其中一个。

编辑:官方setuptools还原页面:

如果你已经安装了Python 2 >=2.7.9或Python 3 >=3.4 Python.org,你已经有了PIP和setuptools,但需要 升级至最新版本: Linux或OS X操作系统: pip install -U pip setuptools 在Windows上: python -m pip install -U pip setuptools

因此,这篇文章中与分发相关的其余部分是过时的(例如,一些链接不起作用)。

编辑2022-02-04

从Python 3.10开始,Distutils已弃用,并将在Python 3.12中删除-使用setuptools:

整个distutils包已弃用,将在Python 3.12中删除。它的功能 用于指定包构建的方法已经完全被 第三方包setuptools和包装…

分发(弃用)

是setuptools的一个分支,它“提供Python 3支持”。distribute(setuptools) + pip安装说明:

curl -O http://python-distribute.org/distribute_setup.py
python distribute_setup.py
easy_install pip

这里也有类似的问题。

更新:分布式似乎已经过时了,即合并到Setuptools:分布式是Setuptools项目的一个已弃用的分支。自Setuptools 0.7发行版以来,Setuptools和Distribute已经合并,并且不再维护Distribute。所有正在进行的工作都应该参考Setuptools项目和Setuptools文档。

你可以尝试在setuptools pypi页面上找到的说明(我还没有测试这个,抱歉:():

wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -O - | python
easy_install pip