Seluruh pustaka yang kita pakai di Course ini — scikit-learn, NumPy, pandas, matplotlib — berjalan di atas satu fondasi: interpreter Python. Sebelum menginstal pustaka apa pun, kita perlu memastikan versi Python yang tepat sudah hadir di komputer Anda. Chapter ini membahas alasan Python menjadi bahasa utama machine learning, pertimbangan pemilihan versi, serta langkah instalasi konkret di Windows, macOS, dan Linux. Pada akhirnya, Anda akan memeriksa sendiri versi interpreter Anda memakai skrip pendek yang bisa dijalankan ulang kapan saja.

Mengapa Python dan Mengapa Versi 3.10 ke Atas #

Python mendominasi machine learning bukan karena bahasanya paling cepat, melainkan karena ekosistemnya. Pustaka inti seperti NumPy, SciPy, dan scikit-learn dibangun di atas lapisan kode C, C++, dan Fortran yang sudah teruji selama puluhan tahun; Python berperan sebagai perekat yang mudah dibaca, ditulis, dan diaudit. Ditambah komunitas yang besar, dokumentasi yang lengkap, dan contoh yang melimpah, bahasa ini menjadi pintu masuk paling landas ke machine learning.

Soal versi, pegangan kita sederhana: gunakan Python 3.10 atau lebih baru, dan hindari Python 2 yang sudah mencapai end of life sejak Januari 2020. Ada tiga alasan praktisnya:

  1. Dukungan pustaka: scikit-learn versi modern mensyaratkan Python 3.9 ke atas; fitur dan perbaikan terbaru diarahkan ke rentang 3.10–3.12.
  2. Fitur bahasa: structural pattern matching hadir di 3.10 dan membuat kode pemeriksaan bentuk data lebih ringkas.
  3. Performa: interpreter 3.11 dan 3.12 membawa percepatan eksekusi yang terasa pada skrip pemrosesan data.

Seluruh contoh pada Course ini diuji dengan Python 3.12, jadi versi tersebut adalah target paling aman untuk mengikuti materi.

Satu catatan arsitektur yang sering ditanyakan: Python yang Anda unduh dari python.org adalah CPython, implementasi acuan yang ditulis dalam bahasa C. CPython memiliki Global Interpreter Lock (GIL) — mekanisme yang membatasi eksekusi bytecode pada satu thread dalam satu waktu. Untuk beban kerja machine learning ini jarang menjadi hambatan, karena NumPy dan scikit-learn melepaskan GIL saat menjalankan komputasi numerik di lapisan bawahnya sehingga proses berat tetap berjalan paralel. Implementasi alternatif seperti PyPy (berbasis JIT) kurang cocok untuk pemula karena sejumlah ekstensi ilmiah belum kompatibel mulus, sementara build free-threaded tanpa GIL yang mulai diperkenalkan pada Python 3.13 masih bersifat eksperimental.

Memilih Cara Instalasi #

Ada beberapa jalur memasang Python, dan semuanya sah. Pilih yang paling sesuai dengan kebiasaan Anda:

MetodeKelebihanKekuranganCocok untuk
Penginstal resmi python.orgKendali penuh atas versi; prosedur baku di semua OSPembaruan versi diulang manualPemula di sistem operasi apa pun
Manajer paket OS (winget, brew, apt, dnf)Satu perintah; ikut terurus bersama paket lainVersi yang tersedia bergantung umur distribusiPengguna nyaman dengan terminal
uv (Astral)Cepat; memasang sekaligus mengelola banyak versi Python dan venvAlat pihak ketiga; perlu dipasang lebih duluAlur kerja modern berbasis terminal
pyenvBanyak versi berdampingan dengan presisiPerlu dependensi kompilasi di Linux; tanpa antarmuka grafisMengelola banyak proyek lintas versi

Menginstal di Sistem Operasi Anda #

Prosedur instalasi berbeda di tiap sistem operasi, tetapi hasil akhirnya sama: perintah python3 (atau py di Windows) yang merujuk ke Python 3.12.

Windows #

Pengguna Windows disarankan memakai penginstal resmi karena sekaligus menyertakan launcher py dan dialog PATH yang ramah bagi pemula.

bash
# Opsi A: penginstal grafis dari python.org
#   1. Buka https://www.python.org/downloads/windows/
#   2. Unduh penginstal "Windows installer (64-bit)" untuk Python 3.12
#   3. Jalankan berkas .exe, centang "Add python.exe to PATH"
#   4. Klik "Install Now" dan tunggu prosesnya selesai

# Opsi B: winget dari PowerShell
winget install Python.Python.3.12

Kotak centang “Add python.exe to PATH” pada Opsi A penting: tanpa PATH, terminal tidak akan menemukan Python yang baru dipasang.

macOS #

macOS sudah membawa /usr/bin/python3 milik sistem, tetapi versinya terikat pada versi macOS dan sebaiknya tidak diutak-atik. Pasang salinan sendiri untuk keperluan belajar:

bash
# Opsi A: penginstal .pkg dari python.org
#   1. Buka https://www.python.org/downloads/macos/
#   2. Unduh penginstal 64-bit universal2 untuk Python 3.12
#   3. Jalankan berkas .pkg dan ikuti langkah pemasangannya

# Opsi B: Homebrew
brew install [email protected]

Instalasi lewat python.org menempatkan Python di /Library/Frameworks/Python.framework sehingga tidak bertabrakan dengan Python bawaan sistem.

Linux #

Distribusi Linux umumnya sudah menyertakan Python 3. Yang perlu ditambahkan adalah pip dan dukungan venv:

bash
# Debian / Ubuntu dan turunannya
sudo apt update
sudo apt install python3 python3-venv python3-pip

# Fedora
sudo dnf install python3 python3-pip

Paket python3-venv kita butuhkan pada Chapter Virtual Environment untuk Proyek Machine Learning — memasangnya sejak awal menghemat satu langkah nanti.

Memeriksa Versi Python #

Setelah instalasi selesai, buka terminal baru (agar PATH diperbarui) dan periksa versinya:

bash
# Windows: gunakan launcher py
py --version

# macOS / Linux
python3 --version

Perintah di atas memanggil interpreter lalu meminta identitasnya. Untuk pemeriksaan yang lebih terstruktur — sekaligus berlatih membaca atribut interpreter secara programatik — kita bisa memakai modul sys:

python
# Pemeriksaan versi Python untuk machine learning.
# Skrip ini membaca identitas interpreter yang sedang berjalan, lalu
# membandingkannya dengan syarat minimal Course ini (Python 3.10).

import sys

nama_implementasi = sys.implementation.name
versi = f"{sys.version_info.major}.{sys.version_info.minor}"
memenuhi_syarat = sys.version_info >= (3, 10)

print(f"Implementasi          : {nama_implementasi}")
print(f"Versi Python          : {versi}")
print(f"Syarat minimal 3.10   : {'terpenuhi' if memenuhi_syarat else 'belum terpenuhi'}")

Output yang Dihasilkan:

text
Implementasi          : cpython
Versi Python          : 3.12
Syarat minimal 3.10   : terpenuhi

Mari kita bedah skrip di atas:

  1. Baris 5 (import sys): modul bawaan sys menyimpan informasi interpreter yang sedang berjalan — tidak perlu instalasi tambahan.
  2. Baris 7 (sys.implementation.name): nama implementasi, misalnya cpython. Nilai inilah yang membedakan CPython dari PyPy atau implementasi lain.
  3. Baris 8 (sys.version_info.major dan .minor): nomor versi utama dan minor diambil sebagai bilangan bulat, lalu dirangkai menjadi 3.12. Memakai atribut ini lebih andal daripada memotong string sys.version secara manual.
  4. Baris 9 (sys.version_info >= (3, 10)): perbandingan langsung terhadap tuple versi — cara idiomatik mengecek syarat versi minimal, sama seperti yang dilakukan banyak pustaka saat memeriksa interpreter.
  5. Baris 11–13: hasil dicetak rapi dengan label; skrip tetap sopan walau syarat belum terpenuhi karena pesannya menyesuaikan nilai boolean.

Interpreter yang tepat baru setengah pekerjaan. Langkah berikutnya adalah menguncinya per proyek agar pustaka satu proyek tidak menimpa pustaka proyek lain — materi Chapter Virtual Environment untuk Proyek Machine Learning.

Referensi Resmi #