모듈(Module)이란?
Python에서 관련된 함수, 클래스, 변수 등을 하나의 파일에 모아놓은 코드 묶음 (파이썬 파일)
모듈 사용 예시 1) 별칭
| import math as m result = m.sqrt(25) print(result) # 5.0 |
모듈 사용 예시 2) 모듈 안의 특정 함수만 불러오기
| from math import sqrt, pow result1 = sqrt(49) result2 = pow(2, 3) print(result1) # 7.0 print(result2) # 8.0 |
모듈 탐색 경로
Python에서 모듈을 불러올 때, Python은 특정 모듈 탐색 경로에서 해당 모듈을 찾습니다. 일반적으로 Python은 다음 순서로 모듈을 찾습니다:
- 현재 작업 디렉터리: 현재 실행 중인 스크립트가 있는 폴더.
- 표준 라이브러리 경로: Python이 기본적으로 제공하는 라이브러리들이 위치한 폴더.
- 환경 변수에 지정된 경로: PYTHONPATH 환경 변수에 지정된 폴더.
모듈이 이 경로들 중 하나에 존재하면, import 또는 from 구문을 통해 해당 모듈을 불러올 수 있습니다.
패키지
패키지(Package)는 모듈의 모음으로, 여러 모듈을 논리적인 그룹으로 묶은 디렉터리입니다. 패키지는 디렉터리 내에 __init__.py 파일이 있어야 Python에서 패키지로 인식됩니다.
- 불러오기 예시)
| from mypackage import module1 from mypackage.module2 import some_function |
패키지 설치 : pip install 패키지 이름
패키지 목록 확인 : pip list
패키지 업그레이드 : pip install --upgrade 패키지이름
패키지 삭제 : pip uninstall 패키지이름
패키지 캐시 삭제 (설치 실패 시 시도) : pip cache purge
패키지 특정버전 설치 (설치 실패 시 시도) : pip install 패키지이름==버전번호
패키지 구조
| mypackage/ # 패키지의 최상위 디렉터리 __init__.py # 패키지를 초기화하는 파일 (필수) module1.py # 첫 번째 모듈 module2.py # 두 번째 모듈 subpackage/ # 서브 패키지 (하위 패키지) __init__.py # 서브 패키지 초기화 파일 submodule.py # 서브 패키지 내의 모듈 |
TMI : 파일 생성 : pip freeze > requirements.txt # 현재 설치된 패키지를 requirements.txt에 기록
가상 환경
가상 환경(Virtual Environment)은 프로젝트별로 독립된 Python 실행 환경을 만드는 도구입니다.
가상 환경을 사용하면, 프로젝트마다 서로 다른 패키지 버전을 설치하고 관리할 수 있어, 패키지 간의 충돌을 방지할 수 있습니다.
가상환경 폴더 생성 : python -m venv 폴더명
가상환경 활성화(Window) : 폴더명\\Scripts\\activate
가상환경 활성화(macOS/Linux) : source 폴더명/bin/activate
주의 : 파워셀이 아닌 cmd 환경에서 입력해야 정상적으로 구동된다