Saya memiliki paket eksternal yang ingin saya instal ke virtualenv python saya dari file tar. Apa cara terbaik untuk menginstal paket?
Saya telah menemukan 2 cara yang dapat melakukannya:
- Ekstrak file tar, lalu jalankan
python setup.py install
di dalam direktori yang diekstrak. pip install packagename.tar.gz
dari contoh # 7 di https://pip.pypa.io/en/stable/reference/pip_install/#examples
Apakah jika ada perbedaan melakukannya dengan 2 cara ini.
python
virtualenv
pip
setup.py
pengguna2125465
sumber
sumber
pip
. Anda dapat menghapus paket dengannya.sdist
?yum
.Jawaban:
Di permukaan, keduanya melakukan hal yang sama: melakukan salah satu
python setup.py install
ataupip install <PACKAGE-NAME>
akan menginstal paket python untuk Anda, dengan sedikit keributan.Namun, menggunakan pip menawarkan beberapa keuntungan tambahan yang membuatnya jauh lebih bagus untuk digunakan.
setup.py
, Anda sering kali harus mencari dan mengunduh dependensi secara manual, yang membosankan dan bisa membuat frustasi.pip uninstall <PACKAGE-NAME>
danpip install --upgrade <PACKAGE-NAME>
. Sebaliknya, jika Anda menginstal paket menggunakansetup.py
, Anda harus secara manual menghapus dan memelihara paket secara manual jika Anda ingin membuangnya, yang berpotensi rawan kesalahan.setup.py
, Anda harus mengunjungi situs web perpustakaan, mencari tahu di mana mengunduhnya, mengekstrak file, menjalankansetup.py
... Sebaliknya, pip akan secara otomatis mencari Indeks Paket Python (PyPi) untuk melihat apakah paket itu ada di sana, dan akan mengunduh, mengekstrak, dan menginstal paket secara otomatis untuk Anda. Dengan beberapa pengecualian, hampir setiap pustaka Python yang benar-benar berguna dapat ditemukan di PyPi.virtualenv
, yaitu program yang memungkinkan Anda menjalankan banyak proyek yang membutuhkan pustaka yang bertentangan dan versi Python di komputer Anda. Info lebih lanjut .Jadi pada dasarnya, gunakan pip. Ini hanya menawarkan peningkatan atas penggunaan
python setup.py install
.Jika Anda menggunakan Python versi lama, tidak dapat memutakhirkan, dan tidak memasang pip, Anda dapat menemukan informasi lebih lanjut tentang pemasangan pip di tautan berikut:
pip, dengan sendirinya, tidak membutuhkan tutorial. 90% dari waktu, satu-satunya perintah yang benar-benar Anda butuhkan adalah
pip install <PACKAGE-NAME>
. Karena itu, jika Anda tertarik untuk mempelajari lebih lanjut tentang detail tentang apa yang sebenarnya dapat Anda lakukan dengan pip, lihat:Anda juga biasanya disarankan untuk menggunakan pip dan virtualenv secara bersamaan. Jika Anda seorang pemula di Python, saya pribadi berpikir akan baik-baik saja untuk memulai dengan hanya menggunakan pip dan menginstal paket secara global, tetapi pada akhirnya saya pikir Anda harus beralih ke penggunaan virtualenv saat Anda menangani proyek yang lebih serius.
Jika Anda ingin mempelajari lebih lanjut tentang menggunakan pip dan virtualenv secara bersamaan, lihat:
sumber
python setup.py install
juga mengunduh dan menginstal dependensi. Apakah ini perubahan sejak Anda menulis jawaban ini pada tahun 2013?python setup.py install
adalah analog dari make install: ini adalah cara terbatas untuk mengkompilasi dan menyalin file ke direktori tujuan. Ini tidak berarti bahwa ini adalah cara terbaik untuk benar-benar menginstal perangkat lunak di sistem Anda.pip
adalah manajer paket, yang dapat menginstal, mengupgrade, mendaftar dan menghapus paket, seperti manajer paket yang sudah dikenal termasuk:dpkg, apt, yum, urpmi, ports
dll. Di bawah tenda, ini akan berjalanpython setup.py install
, tetapi dengan opsi khusus untuk mengontrol bagaimana dan di mana hal-hal akan diinstal.Singkatnya: gunakan
pip
.sumber
Pertanyaannya adalah tentang metode yang disukai untuk menginstal tarball lokal yang berisi paket python, BUKAN tentang keuntungan mengunggah paket ke layanan pengindeksan seperti PyPi.
Agar saya tidak tahu beberapa distributor perangkat lunak tidak mengunggah paket mereka ke PyPi, malah meminta pengembang untuk mengunduh paket dari situs web mereka dan menginstal.
Ini dapat berfungsi tetapi tidak disarankan. Tidak perlu membuka file tarball dan masuk ke dalamnya untuk menjalankan file setup.py.
Ini adalah cara yang dirancang dan disukai. Ringkas dan sejajar dengan paket gaya PyPi.
Informasi lebih lanjut tentang
pip install
dapat ditemukan di sini: https://pip.readthedocs.io/en/stable/reference/pip_install/sumber