본문 바로가기

IT∙테크∙프로그래밍

파이썬에서 모듈을 찾을 수 없다고 할때

모듈을 찾을 수 없을 때 다음과 같은 오류 메시지를 보게 됩니다.

Traceback (most recent call last):
  File "script.py", line 1, in <module>
    import 모듈이름
ModuleNotFoundError: No module named '모듈이름'


모듈 설치 확인

가장 먼저 해야할 일은 해당 모듈이 시스템에 설치되어 있는지 확인합니다. `pip list` 명령어를 사용하면 설치된 모듈의 목록을 볼 수 있습니다.

적절한 설치 명령어 사용

모듈이 설치되어 있지 않다면 `pip install 모듈명` 명령어로 설치할 수 있습니다. import하는 모듈 이름이 설치해야 하는 이름과 다른경우가 가끔 있으니 구글,npm 등을 미리 검색해봅니다.

이렇게 했는데도 문제가 해결되지 않는다면 좀더 문제에 대한 고민이 필요합니다.

여러가지 원인이 있을 수 있지만 많은 초보자 분들이 경험하는 유력한 경우는 한 컴퓨터 내에 여러 버전의 python이 설치된 경우입니다. 이런 경우 pip가 설치한 모듈이 다른 버전의 파이썬에 연결되어있을 때가 있습니다.

해결방법: python -m pip

이경우 pip명령어 대신 python -m pip 명령어를 사용하길 권장드립니다. 이 명령어는 파이썬을 이용하여 pip 모듈을 직접 실행하는 방식입니다. 이 방법은 시스템에 여러 버전의 파이썬이 설치되어 있을 때 어떤 파이썬 버전에 대한 pip을 사용할지 명확하게 지정할 수 있게 해줍니다. 즉, 이 방식으로 pip 명령을 실행하면 `python` 명령어로 호출되는 파이썬 버전과 호환되는 pip 버전을 사용하게 됩니다.

예를 들어, 파이썬 3에 대한 pip를 사용하고자 한다면 다음과 같이 입력할 수 있습니다:

python3 -m pip install 패키지명



또는, 특정 경로에 설치된 파이썬을 사용하고자 할 때는 해당 파이썬 실행 파일의 전체 경로를 명시할 수 있습니다:

/path/to/python -m pip install 패키지명



이 방법은 특히 다음과 같은 상황에서 유용합니다:

- 시스템에 설치된 기본 파이썬이 아닌 다른 버전의 파이썬을 사용하고 싶을 때
- 가상 환경을 사용하는데, 가상 환경의 파이썬 인터프리터와 연결된 pip를 사용하고자 할 때
- `pip` 명령이 여러 파이썬 버전 간에 충돌을 일으킬 때

항상 올바른 파이썬 버전에 대한 모듈을 설치하려면 `python -m pip` 명령어를 사용하는 게 좋은 방법입니다.

반응형