로컬에 설치된 Python 모듈 목록을 확인하는 방법은 여러 가지가 있습니다. 상황에 따라 적합한 도구가 다르므로, 대표적인 세 가지 방법을 예제와 함께 살펴보겠습니다.
1. Python 셸에서 help() 함수 사용하기
가장 간단한 방법은 Python 인터프리터(셸)에서 help('modules') 명령을 실행하는 것입니다.
>>> help('modules')
Please wait a moment while I gather a list of all available modules...
BaseHTTPServer brain_nose markupbase stat
Bastion brain_numpy marshal statvfs
CGIHTTPServer brain_pkg_resources math string
Canvas brain_pytest matplotlib stringold
...
...
이 명령을 실행하면 현재 환경에서 import 가능한 모든 모듈이 알파벳 순으로 나열됩니다. 별도의 도구 설치 없이 바로 사용할 수 있다는 점이 장점입니다.
2. pip freeze로 설치된 패키지 목록 확인하기
터미널에서 설치된 모듈 목록을 확인하려면 Python 패키지 관리자인 pip를 사용하면 됩니다.
$ pip freeze
실행 결과는 다음과 같습니다.
asn1crypto==0.22.0 astroid==1.5.2 attrs==16.3.0 Automat==0.5.0 backports.functools-lru-cache==1.3 cffi==1.10.0 ...
pip freeze는 '패키지명==버전' 형식으로 출력되기 때문에, 프로젝트 의존성을 기록하는 requirements.txt 파일을 만들 때도 널리 활용됩니다.
3. pip list 명령어 사용하기
pip 버전 1.3 이상을 사용하고 있다면 pip list 명령어도 사용할 수 있습니다.
$ pip list asn1crypto (0.22.0) astroid (1.5.2) attrs (16.3.0) Automat (0.5.0) backports.functools-lru-cache (1.3) ... ...
pip list는 '패키지명 (버전)' 형식으로 출력되어 가독성이 좋으며, 다음과 같은 유용한 옵션도 제공합니다.
pip list --outdated: 최신 버전이 아닌, 업데이트가 필요한 패키지만 표시pip show 패키지명: 특정 패키지의 버전, 설치 위치, 의존성 등 상세 정보 확인
마무리 정리
세 가지 방법은 각각 용도가 다릅니다. 빠르게 전체 모듈을 훑어보고 싶다면 help('modules'), requirements.txt 작성이나 환경 백업용이라면 pip freeze, 읽기 편한 목록과 추가 정보가 필요하다면 pip list를 사용하는 것이 좋습니다.