1. 모듈이란
- 연관관계에 있는 변수, 클래스, 함수 등 파이썬 구성요소를 모아놓은 파일
- import를 이용해 다른사람이 만들어놓은 모듈 사용가능
- ex. 메일을 보내는 모듈...등
1) built-in-method : 파이썬을 설치할 때 내부적으로 만들어져있는 모듈
2) 스크립트와 모듈의 차이
- 스크립트: 프로그램을 작동시키는 코드를 담은 '실행 용도의 파일'
- 모듈: 프로그램에 필요한 '변수'들이나 '함수'들을 정의해 좋은 파일
✏️ 상황에 따라 모듈이 될 수도 있고 스크립트가 될 수도 있음!
2. 예제
1) 모듈 or 모듈을 모아놓은 패키지 경로 확인
- sys 모듈: 파이썬의 실행환경과 관련된 번수들과 함수 저장되어 있음
-> path: 파이썬이 모듈을 찾기위해 검색해보는 경로들이 저장되어 있음
- 여기에 등록해서 모듈 경로 삽입해서 사용가능(여기에 없으면 모듈 실행 불가)
print(sys.path)
2) sys.path의 type확인
print(type(sys.path))
3) list로 되어있으면 append
, insert
, index
번호로 삽입 가능
4) 만약 내가 만든 모듈을 math파일에 저장시 모듈 경로 추가
- sys.path.append는 영구적 ❌
- 영구적인건 다른 방법으로 해야함
sys.path.append('/users/jaekyung/math')
5) 추가된거 확인
print(sys.path)
결과 뒷부분에 추가된거 확인 가능
✏️ 참고: 맨 뒷 부분에 site-packages
로 끝나는 경로는 '외부패키지' 사용시 일반적으로 여기 폴더에 저장됨
6) 모듈 사용시
import 파일명
print(파일명.그 안에 있는 함수)
3. 메인 영역 설정
- 모듈 import 해서 사용시 기본 모듈에 있는 내용 실행되지 않게 하려면
1) 원래 모듈에 있던 내용
print(add(5, 5))
print(subtract(15, 5))
2) 메인영역 설정
- 파이썬 파일을 직접실행시 그 파일일의 'name'은 'main'으로 설정 되고, 파일을 다른 곳에서 '임포트'해서 사용시 'name'은 원래 모듈 이름으로 설정됨!
= 나 자신 파일에서만 이 구문을 실행하겠다
✏️ 모듈 작성 후 "이 코드를 사용하면 이렇게 돼요"와 같이 test 코드로 적어놓으면 다른 사람이 사용할때 그 파일에서는 뜨지 않지만 그 사람이 내 모듈 파일에서는 확인 가능
if __name__ == "__main__":
print(add(5, 5))
print(subtract(15, 5))