Traffine I/O

Bahasa Indonesia

2023-03-31

Manajemen Versi Python dengan Pyenv

Apa itu Pyenv

Pyenv adalah alat manajemen versi Python open-source yang memungkinkan pengembang untuk dengan mudah menginstal dan beralih antara versi Python yang berbeda pada basis proyek tertentu. Pyenv menawarkan antarmuka baris perintah yang sederhana namun kuat untuk mengelola versi Python, dan mendukung integrasi dengan alat lingkungan virtual seperti virtualenv dan venv.

Dengan Pyenv, Anda dapat dengan mudah memelihara beberapa versi Python, menciptakan lingkungan pengembangan yang terisolasi, dan memastikan bahwa proyek Anda berjalan pada interpreter Python yang benar. Dengan menguasai Pyenv, Anda akan dapat mempercepat alur kerja pengembangan Anda, meningkatkan kolaborasi, dan membuat proyek Python Anda lebih andal dan mudah dipelihara.

Memulai dengan Pyenv

Instalasi

Sebelum menggunakan Pyenv, Anda perlu menginstalnya di sistem Anda. Proses instalasi bervariasi tergantung pada sistem operasi Anda:

  • macOS
    Anda dapat menginstal Pyenv menggunakan Homebrew dengan perintah berikut:
bash
$ brew install pyenv
  • Ubuntu/Linux
    Gunakan skrip penginstal Pyenv untuk menginstal alat ini:
bash
$ curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
  • Windows
    Pyenv tidak didukung secara resmi di Windows. Namun, Anda dapat menggunakan pyenv-win fork, yang menyediakan fungsi yang serupa. Instal dengan perintah berikut:
bash
$ pip install pyenv-win --target %USERPROFILE%\\.pyenv

Setelah menginstal Pyenv, Anda perlu menambahkannya ke skrip startup shell Anda (misalnya, .bashrc, .zshrc, atau .bash_profile), sehingga tersedia setiap kali Anda membuka terminal. Tambahkan baris berikut ke file konfigurasi shell Anda:

bash
$ export PYENV_ROOT="$HOME/.pyenv"
$ export PATH="$PYENV_ROOT/bin:$PATH"
$ eval "$(pyenv init --path)"

Restart shell Anda, dan Anda sekarang memiliki akses ke perintah pyenv.

Perintah Dasar

Berikut adalah beberapa perintah Pyenv penting untuk memulai:

  • pyenv versions
    Menampilkan semua versi Python yang terinstal pada sistem Anda.

  • pyenv install -l
    Menampilkan semua versi Python yang tersedia yang dapat Anda instal.

  • pyenv global <version>
    Mengatur versi Python global untuk sistem Anda.

  • pyenv local <version>
    Mengatur versi Python lokal untuk direktori saat ini.

  • pyenv shell <version>
    Mengatur versi Python untuk sesi shell saat ini.

  • pyenv uninstall <version>
    Menghapus versi Python tertentu.

Menggunakan Pyenv dengan Lingkungan Virtual

Lingkungan virtual adalah komponen kunci pengembangan Python, karena memungkinkan Anda untuk menciptakan lingkungan terisolasi untuk setiap proyek, memastikan bahwa dependensi dan versi Python tidak saling mengganggu. Pyenv dapat digunakan bersama dengan alat lingkungan virtual seperti virtualenv dan venv.

Anda dapat membuat lingkungan virtual baru menggunakan versi Python yang Anda inginkan dengan perintah berikut:

bash
$ python -m venv <env_name>

Ganti <env_name> dengan nama preferensi Anda untuk lingkungan virtual.

Untuk mengaktifkan lingkungan virtual, jalankan perintah berikut:

  • macOS/Linux: source <env_name>/bin/activate
  • Windows: <env_name>\Scripts\activate

Dengan lingkungan virtual diaktifkan, Anda sekarang dapat menginstal paket dan menjalankan proyek Python Anda menggunakan versi Python yang ditentukan. Untuk menonaktifkan lingkungan virtual, cukup jalankan perintah deactivate.

bash
$ deactivate

Mengelola Versi Python

Menginstal Beberapa Versi Python

Untuk menginstal versi Python tertentu menggunakan Pyenv, Anda dapat menggunakan perintah berikut:

bash
$ pyenv install <version>

Ganti <version> dengan nomor versi Python yang diinginkan (misalnya, 3.9.6). Anda dapat menemukan daftar versi Python yang tersedia dengan menjalankan pyenv install -l. Setelah instalasi selesai, versi Python baru akan tersedia untuk digunakan dengan Pyenv.

Beralih antara Versi Python

Pyenv memungkinkan Anda beralih antara versi Python yang terinstal dengan mudah. Ada tiga skop utama untuk mengatur versi Python: global, lokal, dan shell.

Global

Versi Python global digunakan sebagai default untuk sistem Anda. Anda dapat mengatur versi global menggunakan perintah berikut:

bash
$ pyenv global <version>

Ganti <version> dengan nomor versi Python yang diinginkan.

Lokal

Versi Python lokal diatur pada basis per direktori. Ini lebih tinggi dari versi global ketika Anda berada dalam direktori tersebut. Untuk mengatur versi lokal, navigasikan ke direktori proyek Anda dan jalankan:

bash
$ pyenv local <version>

Ganti <version> dengan nomor versi Python yang diinginkan. Ini akan membuat file .python-version di direktori saat ini, yang Pyenv gunakan untuk menentukan versi Python lokal.

Shell

Versi Python shell diatur pada basis sesi shell. Ini lebih tinggi dari versi global dan lokal. Untuk mengatur versi shell, jalankan:

bash
$ pyenv shell <version>

Ganti <version> dengan nomor versi Python yang diinginkan. Versi shell hanya akan bertahan selama sesi shell saat ini.

Mengatur Versi Python Sistem dan Pengguna

Anda dapat mengatur versi Python sistem dan pengguna menggunakan skop global dan lokal, masing-masing.

  • Sistem
    Untuk mengatur versi Python sistem, gunakan perintah pyenv global seperti yang disebutkan pada bagian sebelumnya.

  • Pengguna-spesifik
    Untuk mengatur versi Python pengguna-spesifik, navigasikan ke direktori rumah pengguna dan gunakan perintah pyenv local. Ini akan membuat file .python-version di direktori rumah pengguna, yang akan digunakan oleh Pyenv untuk menentukan versi Python pengguna-spesifik.

Memahami Skop Global, Lokal, dan Shell

Penting untuk memahami urutan skop global, lokal, dan shell ketika bekerja dengan Pyenv. Urutan prioritas adalah sebagai berikut:

  • Skop shell
    Jika versi shell diatur, maka akan lebih tinggi dari skop lainnya.

  • Skop lokal
    Jika versi lokal diatur dan tidak ada versi shell yang diatur, maka versi lokal digunakan.

  • Skop global
    Jika tidak ada versi shell atau lokal yang diatur, maka versi global digunakan.

Dengan menggunakan skop yang berbeda ini, Anda dapat dengan mudah mengelola versi Python pada basis proyek, pengguna, atau sistem, memastikan bahwa proyek Anda menggunakan interpreter Python yang benar dan menghindari konflik antara proyek dengan persyaratan versi yang berbeda.

Referensi

https://realpython.com/intro-to-pyenv/
https://github.com/pyenv/pyenv
https://fathomtech.io/blog/python-environments-with-pyenv-and-vitualenv/

Ryusei Kakujo

researchgatelinkedingithub

Focusing on data science for mobility

Bench Press 100kg!