Setiap project Python memiliki kebutuhan dependensi berbeda dan tidak boleh saling bertabrakan. Section ini membangun disiplin pengelolaan dependensi: virtual environment, pip, metadata pyproject.toml, pinning versi, lockfile, sampai mempublikasikan package sendiri.
Kenali konsep package, distribution, PyPI, dan site-packages serta perbedaan import name dan distribution name.
Buka → # Menggunakan pipGunakan pip untuk menginstal, memeriksa, meng-upgrade, dan menghapus package berikut version specifier-nya.
Buka → # Membuat Virtual EnvironmentBuat environment terisolasi per proyek dengan python -m venv dan pahami struktur direktorinya.
Buka → # Mengaktifkan dan Menonaktifkan venvAktifkan venv di berbagai shell, verifikasi interpreter yang dipakai, lalu nonaktifkan dengan deactivate.
Buka → # requirements.txtDokumentasikan dependency proyek dengan pip freeze dan pasang ulang lewat pip install -r untuk tim.
Buka → # pyproject.tomlTulis metadata package modern di pyproject.toml dengan tabel [project] mengikuti standar PEP 621.
Buka → # Dependency PinningPahami semantic versioning dan operator ==, >=, ~= untuk memilih strategi pinning versi yang tepat.
Buka → # Memahami LockfilesKunci seluruh pohon dependency secara reproducible dengan lockfile dari pip-tools, Poetry, atau uv.
Buka → # Editable InstallInstal package sendiri dengan pip install -e . agar perubahan kode langsung terpakai tanpa instal ulang.
Buka → # Membangun Python PackageSusun anatomi package dengan src layout, lengkapi metadata, dan bangun sdist serta wheel dengan python -m build.
Buka → # Mendistribusikan Python PackagePublikasikan package ke TestPyPI dan PyPI dengan twine upload, dari pengecekan nama hingga etika versioning.
Buka →