sys.modules와 sys.path의 차이점

Jinsung·2021년 11월 6일
0

python

목록 보기
23/25
post-custom-banner

sys.modules와 sys.path의 차이점

그전에 알아야 할것

sys

sys는 파이썬에서 제공하는 모듈이다. os모듈안에 있으며 파이썬 인터프리터가 제공하는 변수와 함수를 직접 제어할 수 있게 해주는 모듈이다. C언어로 작성되어 있다. 또한 sys는 built-in 되어 있으므로 bulit-in modules에서 찾을 수 있다.

Python에서는 아래와 같은 순서로 module/package를 찾는다.

  • sys.modules => built-in modules => sys.path

sys.module

  • 파이썬이 제일 먼저 모듈이나 패키지를 찾는곳
  • 단순한 딕션너리 구조 그리고 이미 import된 모듈과 package들을 저장
  • 즉 한번 import된 모듈과 패키지를 다시 안 찾아도 된다

sys.path

  • 파이썬이 마지막으로 보는곳
  • 리스트 구조이며 string요소들을 가지고 있는 리스트라고 생각하면 된다
  • 파이ㅣ썬에 포함되어 있는 built-in modules
  • sys.path에도 발견 못하면 ModuleNotFoundError 에러를 리턴
post-custom-banner

0개의 댓글