Python 표준 라이브러리는 사용자들의 편의성을 맞추기 위해 설치 할 때 기본적으로 내장되어 있거나, 설치 되어있는 모듈, 함수를 뜻한다.
여러 종류의 라이브러리가 존재하며, 이 중에서 불러온 module을 확인할 때, 그리고 modules의 directory를 확인 할 수 있는 sys
모듈의 sys.modules
와 sys.path
에 대해 알아보자.
먼저 python에서 module을 불러올 때,
python에서는 다음과 같은 순서로 module을 찾고 불러오게 된다.
1. sys.modules
2. built-in modules
3. sys.path
sys.modules
는 python에서 이미 불러온 모든 module를
dict{ }형태로 mapping하여 저장한 다음,
사용자가 확인할 수 있도록 하는 module이다.
그냥 sys.modules
를 실행하니, sys
가 정의되지 않았다는 오류가 발생한다.
즉 sys
또한 module로 import를 통해 불러와야 하는 것이다.
sys
module은 어떻게 찾지?위와 같은 형태로 sys.modules
을 실행하게 되면,
불러왔던 모든 module을 확인 할 수 있다.
이것은 python에서 제공하는 공식 라이브러리들이다.
위의 사진에서 확인 할 수 있듯이,
상당히 많은 라이브러리들이 기본적으로 설치되어 작동하고 있다.
sys
는 python에 built-in 되어있기 때문에 쉽게 찾을 수 있는 것이다!마지막으로 확인하는 sys.path
는 기본적으로 설정되어 있는 경로들과,
python 인터프리터를 불러온 파일의 경로(즉, script파일이 포함된 directory, path[0]
)들을 list의 형태로 나타내준다.
sys.modules와 sys.path 둘 다 수정이 가능하지만,
modules의 경우엔 python에 오류를 불러오기 쉬움으로 주의가 필요하다.
(python에서도 예상대로 작동되지 않는다고 권장하지 않는다.)