Python 3: ImportError "Tidak Ada Modul bernama Setuptools"

284

Saya mengalami masalah dengan menginstal paket dalam Python 3.

Saya selalu menginstal paket dengan setup.py install. Tapi sekarang, ketika saya mencoba menginstal paket ansicolors saya mendapatkan:

importrorror "Tidak Ada Modul bernama Setuptools"

Saya tidak tahu apa yang harus dilakukan karena saya tidak menginstal setuptools di masa lalu. Tetap saja, saya bisa menginstal banyak paket setup.py installtanpa setuptools. Mengapa saya harus mendapatkan setuptools sekarang?

Saya bahkan tidak dapat menginstal setuptools karena saya memiliki Python 3.3 dan setuptools tidak mendukung Python 3.

Mengapa perintah instal saya tidak berfungsi lagi?

pengguna1994934
sumber

Jawaban:

533

setup.pyKebutuhan file Anda setuptools. Beberapa paket Python digunakan distutilsuntuk distribusi, tetapi sebagian besar sekarang menggunakan setuptools, paket yang lebih lengkap. Inilah pertanyaan tentang perbedaan di antara mereka.

Untuk menginstal setuptoolsdi Debian:

sudo apt-get install python3-setuptools

Untuk versi Python yang lebih lama (Python 2.x):

sudo apt-get install python-setuptools
tiago
sumber
1
terima kasih untuk posting ini .. banyak membantu saya .. Banyak orang yang mengadvokasi setuptools tetapi tidak mungkin untuk menginstal di py3.3 .. mendistribusikan karya seperti pesona
piggy
22
saya harus menginstalnya dengan "python3" untuk membuatnya bekerja:sudo apt-get install python3-setuptools
D.Steinel
1
Saya menginstal python3 python3-pip python3-setuptoolsdan berhasil. Terima kasih.
warchantua
3
Untuk beberapa alasan di Ubuntu 18.04 itu tidak berfungsi apt-get install python3-setuptools.
loretoparisi
1
@loretoparisi Saya mendapat masalah yang sama, apakah Anda menemukan solusi untuk ubuntu 18.04?
Scott
91

EDIT: Halaman resmi setuptools dox :

Jika Anda memiliki Python 2> = 2.7.9 atau Python 3> = 3.4 diinstal dari python.org, Anda sudah memiliki pip dan setuptools, tetapi perlu meningkatkan ke versi terbaru:

Di Linux atau OS X:

pip install -U pip setuptools 

Di Windows:

python -m pip install -U pip setuptools

Karenanya sisa dari posting ini mungkin sudah usang (mis. Beberapa tautan tidak berfungsi).

Distribute - adalah garpu setuptools yang "menawarkan dukungan Python 3". Petunjuk instalasi untuk mendistribusikan (setuptools) + pip:

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

Masalah serupa di sini .

UPDATE: Mendistribusikan tampaknya sudah usang, yaitu bergabung ke Setuptools: Mendistribusikan adalah garpu usang dari proyek Setuptools. Sejak rilis Setuptools 0.7, Setuptools dan Distribute telah bergabung dan Distribute tidak lagi dipertahankan. Semua upaya berkelanjutan harus merujuk pada proyek Setuptools dan dokumentasi Setuptools.

Anda dapat mencoba dengan instruksi yang terdapat pada halaman setuptools pypi (saya belum mengujinya, maaf :():

wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -O - | python
easy_install pip
Robert Lujo
sumber
1
Terima kasih banyak, saya tidak yakin bagaimana ini menyelesaikan masalah saya, tetapi ternyata berhasil. segera! Saya mengalami masalah serius ketika mencoba menginstal distro. ini pasti memaksa instalasi karena sudo pip install distributetidak akan berfungsi. Masalah saya didokumentasikan di stackoverflow.com/questions/16846742/...
Deepend
1
Ini berfungsi lintas platform (Menang), sedangkan jawaban yang diterima tidak berlaku. Terima kasih!
fundead
Serius, orang ini membutuhkan lebih banyak kredit daripada yang diberikan. Dia baru saja menyelamatkan hariku
Stephn_R
1
URL tidak lagi valid .. bisakah Anda periksa?
mebada
22

Saya melakukan ini di dalam virtualenv pada Oracle Linux 6.4 menggunakan python-2.6 sehingga solusi berbasis apt bukan pilihan bagi saya, juga bukan ide python-2.7. Perbaikan saya adalah untuk meningkatkan versi setuptools saya yang telah diinstal oleh virtualenv:

pip install --upgrade setuptools

Setelah itu, saya bisa menginstal paket ke dalam virtualenv. Saya tahu pertanyaan ini sudah memiliki jawaban yang dipilih tetapi saya berharap jawaban ini akan membantu orang lain dalam situasi saya.

Dawngerpony
sumber
1
Catatan, itu mengalami masalah "Tidak dapat menghapus entri dari file tidak ada ..." Menambahkan --ignore-instal ke perintah di atas memperbaikinya.
Kiki Jewell
10

pip uninstall setuptools

lalu:

pip install setuptools

Ini berfungsi untuk saya dan memperbaiki masalah saya.

Gonjay
sumber
Ini berhasil untuk saya! Entah bagaimana, setuptools saya adalah versi yang lebih lama 28.8. Penghapusan dan instal ulang ini memaksanya untuk memperbarui ke versi 48. Dan kemudian semuanya bekerja dengan baik.
Joseph Lee
4

The distributepaket menyediakan Python versi 3-kompatibel setuptools: http://pypi.python.org/pypi/distribute

Juga, gunakan pip untuk menginstal modul. Secara otomatis menemukan dependensi dan menginstalnya untuk Anda.

Ini berfungsi dengan baik untuk saya dengan paket Anda:

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

Windows 7:

Aku telah memberikan solusi lengkap di sini untuk python selenium webdriver

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
Sathish
sumber
1

The PyPA direkomendasikan alat untuk menginstal dan mengelola paket Python pip. pipdisertakan dengan Python 3.4 ( PEP 453 ), tetapi untuk versi yang lebih lama inilah cara menginstalnya (di Windows):

Unduh 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...
Cees Timmerman
sumber
0

Beberapa tahun yang lalu saya mewarisi proyek python (2.7.1) yang berjalan di bawah Django-1.2.3 dan sekarang diminta untuk meningkatkannya dengan kemungkinan QR. Mendapat masalah yang sama dan tidak menemukan pip atau apt-get. Jadi saya menyelesaikannya dengan cara yang sangat berbeda tetapi mudah. Saya / bin / mengedit setup.py dan mengubah baris "dari setuptools import setup" menjadi: "dari distutils.core import setup" Itu berhasil untuk saya, jadi saya pikir saya harus memposting ini untuk pengguna lain yang menggunakan ular piton lama . Salam, Roger Vermeir

Roger Vermeir
sumber