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软件包的工具是pip
。 pip
包含在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...