Python 3:ImportError“No Module named Setuptools”

我在Python 3中安装软件包时遇到麻烦。

我一直使用setup.py install命令安装软件包。 但是现在当我尝试安装ansicolors包时,我得到:

importerror“没有名为Setuptools的模块”

我不知道该怎么做,因为我从来没有Setuptools,仍然我已经安装了很多与setup.py install命令没有setuptools的包,现在我应该得到setuptools。

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

为什么我的安装命令不起作用了?

你的setup.py文件需要setuptools 。 许多Python软件包使用distutils进行分发,但有些使用setuptools ,这是一个更完整的软件包。 这是一个关于它们之间差异的问题。

对于Python 3.3,你应该安装distribute 这是一个更新的包,它和setuptools一样setuptools (它甚至setuptools内部被称为setuptools )。

更新(2014年10月):分布已经与setuptools 0.7合并,所以只需要为Python 2.7和3.x获取setuptools

在Debian上安装:

 sudo apt-get install python-setuptools 

对于Python 3.x

 sudo apt-get install python3-setuptools 

编辑:官方setuptools dox页面 :

如果您从python.org安装了Python 2> = 2.7.9或Python 3> = 3.4,则您已经拥有pip和setuptools,但需要升级到最新版本:

在Linux或OS X上:

 pip install -U pip setuptools 

在Windows上:

 python -m pip install -U pip setuptools 

因此,这篇文章的其余部分可能已经过时(例如一些链接不起作用)。

分发 – 是“提供Python 3支持”的setuptools分支。 分发安装说明(setuptools)+ pip:

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

这里的问题类似。

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

您可以尝试在setuptools pypi页面上find说明 (我还没有testing过,对不起:():

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

我在使用python-2.6的Oracle Linux 6.4上使用virtualenv,所以基于apt的解决scheme不适合我,python-2.7也不是。 我的修复是升级由virtualenv安装的setuptools的版本:

 pip install --upgrade setuptools 

之后,我能够将软件包安装到virtualenv中。 我知道这个问题已经有了答案select,但我希望这个答案将有助于其他人在我的情况。

distribute包提供了一个Python 3兼容版本的setuptools : http : setuptools

另外,使用pip来安装模块。 它会自动查找依赖关系并为您安装它们。

对你来说,它对我来说工作得很好:

 [~] pip --version pip 1.2.1 from /usr/lib/python3.3/site-packages (python 3.3) [~] sudo pip install ansicolors Downloading/unpacking ansicolors Downloading ansicolors-1.0.2.tar.gz Running setup.py egg_info for package ansicolors Installing collected packages: ansicolors Running setup.py install for ansicolors Successfully installed ansicolors Cleaning up... [~] 

pip uninstall setuptools

接着:

pip install setuptools

这适用于我并解决我的问题。

Windows 7的:

我已经在这里为pythonseleniumwebdriver提供了一个完整的解决scheme

 1. Setup easy install (windows - simplified) a. download ez.setup.py (https://bootstrap.pypa.io/ez_setup.py) from 'https://pypi.python.org/pypi/setuptools' b. move ez.setup.py to C:\Python27\ c. open cmd prompt d. cd C:\Python27\ e. C:\Python27\python.exe ez.setup.py install 

PyPA推荐的安装和pipe理Python软件包的工具是pippip包含在Python 3.4( PEP 453 )中,但对于旧版本,这里是如何安装它(在Windows上):

下载https://bootstrap.pypa.io/get-pip.py

 >c:\Python33\python.exe get-pip.py Downloading/unpacking pip Downloading/unpacking setuptools Installing collected packages: pip, setuptools Successfully installed pip setuptools Cleaning up... >c:\Python33\Scripts\pip.exe install pymysql Downloading/unpacking pymysql Installing collected packages: pymysql Successfully installed pymysql Cleaning up...