Programming Language/Python

[Python] ModuleNotFoundError: No module named 에러 해결

DEV_HEO 2023. 3. 15. 16:32
320x100

import dateutil 이 안돼서 찾아보니

pip install python-dateutil을 해주래서 해주었는데도 안됨.

 

pip install python-dateutil을 해주면 계속

Requirement already satisfied 어쩌구 하면서 이미 설치되었다고 한다.

 

더 구글링 해보니

시스템 환경변수를 추가해줘야 한다고 한다.

(아무래도 python 설치하고 모듈을 처음 install 해서 그렇지 않을까 예상된다)

 


모듈 설치 경로 확인

 

우선

pip install python-dateutil을 해주고

Requirement already satisfied 뒤에 붙은 경로를 복사해준다.

( 내 경우 c:\users\*******\appdata\local\programs\python\python39\lib\site-packages)

 

import sys
print(sys.path)

위 코드를 실행해보면 복사해둔 경로는 출력되지 않는다.

경로를 추가해줘야 한다는 의미다.

 


경로 추가

https://bigdata-doctrine.tistory.com/9

 

[Python] ModuleNotFoundError: No module named (import가 안되는 경우)

오늘은 ModuleNotFoundError가 뜨면서 모듈이 import가 안 되는 경우의 해결법에 대해서 알아보겠습니다. 문제 터미널에 "pip install numpy"를 입력하니 이미 설치된 파일이라고 뜹니다. 하지만 "import numpy"

bigdata-doctrine.tistory.com

 

위 블로그에는 두 가지 방법이 나온다.

1. sys.path.append('경로~~~') 코드 한 줄로 해결하는 방법

import sys
sys.path.append('~~경로~~')
import dateutil

 

위처럼 해본 결과 에러없이 잘 import되긴 하지만

sys.path.append()코드를 삭제하고 다시 실행하면 다시 not module 에러가 난다.

일시적인 해결방법인 듯 하다.(내가 잘못 사용해서 일시적으로만 작동하는지도 모른다.)

 

2. 시스템 환경 변수 편집

 

환경 변수 - 시스템변수 새로만들기 

변수 이름 : PYTHONPATH

변수 값 : 복사한 경로

 

입력해주고 import코드를 다시 실행해보면 정상 작동된다.

+) vscode 사용하고 있는데, vscode 재실행해야 정상작동됨.

 

시스템 변수 편집이 영구적이라서 이 방법으로 해결했다.

320x100

'Programming Language > Python' 카테고리의 다른 글

[Python] list, dict 자료형  (0) 2023.03.09