Python 3: ImportError “Setuptools adında Modül Yok”


284

Python 3'te paketleri kurmakta sorun yaşıyorum.

Ben her zaman paketleri yükledim setup.py install . Ama şimdi, ansicolors paketini yüklemeye çalıştığımda:

importterror "Setuptools adında Modül Yok"

Ne yapacağım hakkında hiçbir fikrim yok çünkü geçmişte kurulum araçları yüklü değildi. Yine de, birçok paket yükleyebildimsetup.py install olmadan . Neden şimdi kurulum araçlarını almalıyım?

Setuptools'u bile yükleyemiyorum çünkü Python 3.3'üm var ve setuptools Python 3'ü desteklemiyor.

Kurulum komutum neden artık çalışmıyor?

Yanıtlar:


533

Kişisel setup.pydosya ihtiyacı setuptools. Bazı Python paketleri distutilsdağıtım için kullanılır , ancak çoğu artık setuptoolsdaha eksiksiz bir paket kullanır. İşte aralarındaki farklar hakkında bir soru.

setuptoolsDebian'a kurmak için:

sudo apt-get install python3-setuptools

Python'un daha eski bir sürümü için (Python 2.x):

sudo apt-get install python-setuptools

1
Bu yazı için teşekkürler .. bana çok yardımcı oldu ... Birçok halk setuptools tavsiye ediyoruz ama py3.3 yüklemek mümkün değil ... dağıtmak bir cazibe gibi çalışır
domuzcuk

22
i işe almak için "python3" ile yüklemek zorunda kaldı:sudo apt-get install python3-setuptools
D.Steinel

1
Yükledim python3 python3-pip python3-setuptoolsve işe yaradı. Teşekkürler.
warchantua

3
Bazı nedenlerden dolayı Ubuntu 18.04 ile birlikte çalışmaz apt-get install python3-setuptools.
loretoparisi

1
@loretoparisi Aynı sorunu yaşadım, Ubuntu 18.04 için bir çözüm buldunuz mu?
Scott

91

DÜZENLEME: Resmi setuptools dox sayfası :

Python.org'dan Python 2> = 2.7.9 veya Python 3> = 3.4 yüklüyse, zaten pip ve setuptools'unuz olacak, ancak en son sürüme yükseltmeniz gerekecek:

Linux veya OS X'te:

pip install -U pip setuptools 

Windows'ta:

python -m pip install -U pip setuptools

Bu nedenle, bu yazının geri kalanı muhtemelen eski (örneğin, bazı bağlantılar çalışmıyor).

Dağıt - "Python 3 desteği sunan" bir kurulum çatalıdır. Dağıtım (kurulum araçları) + pip için kurulum talimatları:

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

Burada benzer sayı .

GÜNCELLEME: Dağıtma geçersiz görünüyor, yani Setuptools ile birleştirildi: Dağıt, Setuptools projesinin kullanımdan kaldırılmış bir çatalını oluşturuyor. Setuptools 0.7 sürümünden bu yana, Setuptools ve Dağıt birleştirilmiştir ve Dağıt artık tutulmamaktadır. Devam eden tüm çabalar Setuptools projesine ve Setuptools belgelerine başvurmalıdır.

Setuptools pypi sayfasında bulunan talimatları deneyebilirsiniz (Bunu test etmedim, üzgünüm :():

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

1
Çok teşekkür ederim, bunun sorunumu nasıl çözdüğünden emin değilim ama oldu. anında! Dağıtımı yüklemeye çalışırken ciddi sorunlar yaşıyordum. bu bir şekilde sudo pip install distributeçalışmayacak şekilde yüklemeyi zorlamalıdır . Sorunlarım stackoverflow.com/questions/16846742/…
Deepend

1
Bu, platformlar arası (Win) çalışır, oysa kabul edilen cevap geçerli değildir. Teşekkürler!
Mart'ta fundead

Cidden, bu adamın hes'den daha fazla krediye ihtiyacı var. Sadece günümü kurtardı
Stephn_R

1
URL'ler artık geçerli değil .. lütfen kontrol edebilir misiniz?
mebada

22

Bunu python-2.6 kullanarak Oracle Linux 6.4 üzerinde bir sanal ağ içinde yapıyordum, bu yüzden uygun tabanlı çözümler benim için bir seçenek değildi, python-2.7 fikirleri de değildi. Düzeltmem, virtualenv tarafından yüklenen setuptools sürümümü yükseltmekti:

pip install --upgrade setuptools

Bundan sonra paketleri virtualenv'e yükleyebildim. Bu sorunun zaten seçilmiş bir cevabı olduğunu biliyorum ama umarım bu cevap benim durumumda başkalarına yardımcı olacaktır.


1
Not, "Varolmayan dosyadan girişler kaldırılamıyor ..." sorunu vardı Yukarıdaki komut için --ignore-yüklü eklenmesi sorunu düzeltti.
Kiki Jewell

10

pip uninstall setuptools

ve sonra:

pip install setuptools

Bu benim için çalışıyor ve sorunumu düzeltiyor.


Bu benim için çalıştı! Her nasılsa benim kurulum araçları eski 28.8 sürümüydü. Bu kaldırma ve yeniden yükleme, sürüm 48'e güncellemeye zorladı. Ve sonra her şey iyi çalıştı.
Joseph Lee

4

distributePaket bir Python 3 ile uyumlu sürümünü sağlar setuptools: http://pypi.python.org/pypi/distribute

Ayrıca kullan pip modülleri takmak için . Bağımlılıkları otomatik olarak bulur ve sizin için kurar.

Paketinizle benim için iyi çalışıyor:

[~] 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...
[~]

3

Windows 7:

Burada python selenyum webdriver için eksiksiz bir çözüm verdim

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

1

PyPA önerilen yükleme ve Python paketlerini edilir yönetmek için bir araç pip. pipPython 3.4 ( PEP 453 ) ile birlikte verilir, ancak eski sürümler için nasıl yükleneceği aşağıda açıklanmıştır (Windows'ta):

Https://bootstrap.pypa.io/get-pip.py indir

>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...

0

Birkaç yıl önce Django-1.2.3 kapsamında yürütülen bir python (2.7.1) projesini miras aldım ve şimdi QR olasılıklarıyla geliştirmesi istendi. Aynı sorunu var ve pip ya da apt-get bulamadık. Bu yüzden tamamen farklı ama kolay bir şekilde çözdüm. I / bin / vi-ed kurulum.py ve "setuptools ithalat kurulum" satırına: "distutils.core ithalat kurulum" satır değiştirdi Bu benim için yaptı, bu yüzden eski piton çalışan diğer kullanıcılar için bu post gerektiğini düşündüm . Saygılarımızla, Roger Vermeir

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.