한줄 요약:
“모듈이 없대요 😭” → 설치 안 됐거나, 다른 파이썬이 실행 중!
👉 올바른 환경에 pip로 재설치하면 대부분 해결 💡
1. 에러 예시
ModuleNotFoundError: No module named 'requests'
또는
ImportError: cannot import name 'Flask'
이건 파이썬이 그 모듈을 찾지 못했다는 뜻이에요.
하지만 대부분 간단한 원인입니다 👇
2. Step 1️⃣ 진짜 설치되어 있는지 확인
터미널(또는 CMD)에서 실행:
python -m pip show requests
🪄 결과 예시:
Name: requests
Version: 2.31.0
Location: C:\Users\Gaon\AppData\Local\Programs\Python\Python312\Lib\site-packages
❌ 아무 것도 안 나오면 → 아직 설치되지 않은 것!
3. Step 2️⃣ 모듈 설치 (정석 방법)
✅ Windows
py -m pip install requests
✅ macOS / Linux
python3 -m pip install requests
💡 특정 버전 지정도 가능:
python -m pip install requests==2.28.0
4. Step 3️⃣ pip는 있는데 설치가 안 먹을 때
✅ “다른 파이썬”이 실행되고 있을 확률 높음
1️⃣ 현재 실행 중인 파이썬 확인
where python # Windows
which python3 # macOS/Linux
2️⃣ pip이 가리키는 위치 확인
python -m site
3️⃣ 만약 pip install 했는데도 안 된다면
같은 버전으로 pip 실행 중인지 확인 👇
python -m pip install requests
python과pip이 같은 경로를 가리켜야 해요!
5. Step 4️⃣ 가상환경(venv) 안과 밖 혼동
가상환경 안에서 설치한 모듈은
밖에서 python으로 실행하면 못 찾아요 😅
✅ 가상환경 들어가기
- Windows
.venv\Scripts\activate - macOS/Linux
source .venv/bin/activate
✅ 설치
pip install requests
✅ 비활성화
deactivate
환경마다 독립된 site-packages를 갖기 때문에,
환경을 바꾸면 모듈을 다시 설치해야 합니다.
6. Step 5️⃣ IDE가 잘못된 파이썬을 쓰는 경우
| IDE | 확인 방법 | 해결 |
|---|---|---|
| VSCode | 하단 오른쪽 “Python 3.x” 선택 → 현재 인터프리터 확인 | Ctrl + Shift + P → Python: Select Interpreter |
| PyCharm | Settings → Project → Python Interpreter | 올바른 환경(가상환경 or 전역) 선택 |
| Jupyter Notebook | 셀에서 !which python 또는 !pip show requests | !pip install requests 혹은 sys.executable로 경로 확인 |
7. Step 6️⃣ 모듈 이름이 다를 수도 있다
| 잘못된 이름 | 올바른 설치 명령 |
|---|---|
import PIL | pip install pillow |
import cv2 | pip install opencv-python |
import bs4 | pip install beautifulsoup4 |
import yaml | pip install PyYAML |
import Crypto | pip install pycryptodome |
실제 import 이름과 pip 패키지 이름이 다른 경우도 많아요!
8. Step 7️⃣ pip 자체가 깨졌을 때
python -m ensurepip --upgrade
python -m pip install --upgrade pip
그 후 다시 시도 👇
python -m pip install requests
9. Step 8️⃣ 네트워크 문제일 경우
회사나 학교 네트워크에서 설치가 막힐 수 있어요 😭
python -m pip install requests -i https://pypi.org/simple
또는 프록시 환경에서는:
python -m pip install requests --proxy http://id:pw@proxy.company.com:8080
10. Step 9️⃣ 캐시 초기화 (이상할 때 한번쯤)
python -m pip cache purge
pip 캐시가 꼬였을 때 깔끔히 비워주기
11. Step 🔟 import 오류일 때 점검
import sys
print(sys.path)
모듈이 들어 있는 경로(
.../site-packages)가
여기 목록에 포함돼야 해요.
12. Step 11 내 모듈 이름이 파이썬 기본 모듈과 겹침
예를 들어, math.py, email.py, random.py 같은 이름으로
직접 만든 파일이 있다면 파이썬이 그 파일을 먼저 불러와서 충돌해요 😨
✅ 해결
- 파일 이름 변경 (
my_math.py등으로) __pycache__폴더 삭제- 다시 실행
13. 최종 점검 리스트
python -m pip install 모듈명으로 설치했는가- 현재 파이썬이 올바른 버전/환경인지 확인했는가
- 가상환경 안에 진입 후 설치했는가
- 패키지 이름이 정확한가 (PyPI에서 검색)
- 모듈과 같은 이름의 파일을 만들지 않았는가
14. 요약 한 줄
“ModuleNotFoundError”는 대부분
“설치가 안 됐거나 다른 파이썬이 실행 중”일 때 발생한다.→
python -m pip install 모듈명이 정답 ✅
이전 강좌 👈 [에러#2] 한글 깨짐·경로 오류
다음 강좌 👉 [에러#4] ImportError: cannot import name 오류 정리