Import ErrorPythonpipvenv5 mnt baca

Mengatasi ModuleNotFoundError di Python

Python tidak menemukan package yang sudah kamu install. Hampir selalu soal interpreter atau virtual environment yang salah.

1 · Gejala & Log Pesan Error

error.log
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'requests'

// padahal kemarin: pip install requests → "Successfully installed"

2 · Akar Penyebab Masalah

Package Terpasang di Python yang Lain

Komputer bisa punya banyak Python: bawaan sistem, dari Microsoft Store, dari python.org, dari Anaconda, plus tiap virtual environment. pip install requests memasang ke satu interpreter, sedangkan python app.py mungkin memakai interpreter lain yang tidak punya package itu.

"Successfully installed" kemarin itu nyata, cuma tujuannya beda dengan yang menjalankan kodemu hari ini. Ini menjelaskan kenapa error-nya terasa acak: di satu terminal bisa, di terminal lain tidak, di VS Code tidak.

3 · Solusi & Diff Kode

✕ Sebelum (bermasalah)

before
# ❌ pip dan python dari dunia berbeda
$ pip install requests        # masuk ke python A
$ python app.py               # dijalankan python B → ModuleNotFoundError

$ which pip     # /usr/bin/pip
$ which python  # /home/user/.venv/bin/python  ← beda!

✓ Sesudah (diperbaiki)

after
# ✔ selalu pasangkan: python -m pip
$ python -m pip install requests   # pasti masuk ke interpreter yang sama
$ python app.py                    # dengan python yang sama → aman

# ✔ pola proyek yang benar: virtual environment
$ python -m venv .venv
$ source .venv/bin/activate        # Windows: .venv\Scripts\activate
(.venv) $ python -m pip install -r requirements.txt

Langkah Perbaikan

  1. Samakan pip dan python: biasakan python -m pip install ..., bukan pip install .... Sintaks ini menjamin package masuk ke interpreter yang sama dengan yang menjalankan kodemu.
  2. Cek interpreter aktif: which python dan python --version. Di VS Code, cek interpreter di pojok kanan bawah dan samakan dengan terminal.
  3. Pakai virtual environment per proyek: python -m venv .venv, aktifkan, lalu install di dalamnya. Setiap proyek punya dunianya sendiri, tidak saling mengotori.
  4. Catat dependensi: simpan di requirements.txt (python -m pip freeze > requirements.txt) agar orang lain (dan kamu 3 bulan lagi) bisa reproduce environment dengan satu perintah.