Materi
Tutorial Python §12 menggambarkan masalahnya: aplikasi A butuh versi 1.0 sebuah paket, aplikasi B butuh versi 2.0, dan satu instalasi Python tidak bisa memenuhi keduanya. Lingkungan virtual (venv) adalah folder mandiri berisi Python dan paket-paket untuk satu proyek, sehingga setiap proyek memegang versinya sendiri.
python -m venv .venv
source .venv/bin/activate # macOS dan Linux
.venv\Scripts\activate # Windows
python -m pip install pandas==3.0.2
python -m pip freeze > requirements.txt
python -m pip install -r requirements.txt # di komputer lain, di venv baruSetelah diaktifkan, perintah python dan pip memakai lingkungan itu sampai ditutup dengan deactivate. pip freeze mencetak paket terpasang dalam format nama==versi. Menyimpannya ke requirements.txt membuat orang lain bisa memasang versi yang sama persis dengan pip install -r.
Dokumentasi modul venv menegaskan sifat foldernya: tidak dimasukkan ke Git, dianggap sekali pakai sehingga cukup dihapus lalu dibuat ulang, tidak dipindah atau disalin ke komputer lain, dan tidak diisi kode proyek. Yang dibagikan adalah requirements.txt. Di dalam program, sys.prefix != sys.base_prefix bernilai True bila Python sedang berjalan dari venv.