Mentafsir Perbezaan antara Pakej Suite untuk Pengurusan Persekitaran Python
Perpustakaan standard Python 3.3 memperkenalkan pakej venv, alat baru untuk mencipta persekitaran Python terpencil. Walau bagaimanapun, terdapat pelbagai pakej bunyi yang serupa, seperti pyvenv, pyenv, virtualenv, virtualenvwrapper dan pipenv, yang menimbulkan persoalan tentang perbezaannya.
Pakej PyPI Luaran
Beberapa pakej penting berada di luar perpustakaan standard, setiap pakej berbeza tujuan:
-
Virtualenv: Alat yang digunakan secara meluas untuk mencipta persekitaran Python yang diasingkan untuk mengehoskan perpustakaan. Ia memasang fail ke direktori yang ditetapkan dan mengubah suai pembolehubah PATH untuk memasukkan direktori bin tersuai. Python mencari pustaka berbanding laluannya dalam direktori persekitaran.
-
Pyenv: Memfokuskan pada mengasingkan versi Python. Ia bertukar antara pelbagai versi dengan memanipulasi pembolehubah PATH dan menggunakan skrip yang menentukan versi yang hendak dilaksanakan berdasarkan pembolehubah atau fail persekitaran tertentu. Pyenv memudahkan proses memuat turun dan memasang berbilang versi Python.
-
Pyenv-Virtualenv: Sambungan pyenv yang menyepadukan virtualenv dengan lancar, membenarkan penggunaan serentak kedua-dua alatan. Walau bagaimanapun, untuk Python 3.3 atau lebih baru, ia memanfaatkan venv jika tersedia.
-
Virtualenvwrapper: Memanjangkan virtualenv, menyediakan arahan yang mudah untuk mengurus berbilang direktori virtualenv dan bertukar antara mereka.
- Pyenv-Virtualenvwrapper: Pyenv lain sambungan, yang ini menyepadukan virtualenvwrapper dengan anggun ke dalam pyenv.
-
Pipenv: Bertujuan untuk menyelaraskan Pipfile, pip dan virtualenv ke dalam alat baris perintah yang padu. Direktori virtualenv diletakkan di lokasi direktori tertentu, berbeza daripada keutamaan virtualenv untuk direktori kerja semasa. Tumpuan utama Pipenv ialah membangunkan aplikasi Python.
Modul Perpustakaan Standard
Di dalam perpustakaan standard Python terdapat pakej tambahan yang berkaitan:
-
Pyvenv: Skrip dihantar dengan Python 3.3 ke 3.7 (dialih keluar dalam 3.8), yang menyerupai virtualenv dengan ciri terhad.
-
Venv: Pakej yang terdapat dalam Python 3, boleh diakses melalui python3 -m venv. Ia berkongsi tujuan yang sama seperti virtualenv, walaupun dengan julat fungsi yang lebih sempit. Venv ketinggalan dalam populariti virtualenv kerana pengehadan platformnya.
Ringkasan Infografik
Package |
Description |
External Tools |
Standard Tools |
Virtualenv |
Python library environment isolation |
Pyenv-Virtualenv |
N/A |
Pyenv |
Python version management |
Pyenv-Virtualenvwrapper |
N/A |
Virtualenvwrapper |
Virtualenv directory manager |
N/A |
N/A |
Pyenv-Virtualenvwrapper |
Pyenv and Virtualenvwrapper integration |
N/A |
N/A |
Pipenv |
Pipfile, pip, and virtualenv integration |
N/A |
N/A |
Pyvenv |
Python 3 counterpart to virtualenv (Python 2 only) |
N/A |
Python 3.3-3.7 |
Venv |
Python 3 counterpart to virtualenv |
N/A |
Python 3 |
Atas ialah kandungan terperinci Apakah Perbezaan Antara `venv`, `virtualenv`, `pyenv`, `virtualenvwrapper` dan `pipenv` Python untuk Pengurusan Alam Sekitar?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!