Modules¶
- Module: 각종 변수, 함수, 클래스를 담고 있는 파일. 간단한 기능을 담을 때 사용
- Package
- : 여러 모듈을 묶은 것(모듈에 namespace 제공). 코드가 많고 복잡할 때 사용
- : 기능들이 모듈 여러 개로 잘게 나누어져 있고, 관련된 모듈끼리 폴더에 모여 있는 형태
- 파이썬 표준 라이브러리(PSL): python에 기본으로 설치된 모듈과 패키지, 내장함수를 묶어 PSL이라 부름
import로 모듈 가져오기¶
- import 모듈
- import 모듈1, 모듈2
- 모듈.변수
- 모듈.함수()
- 모듈.클래스()
- from 모듈 import (변수,함수,클래스) as 이름
- 가져온 모듈 해제하기, 다시 가져오기
import로 패키지 가져오기¶
- import 패키지.모듈
import 패키지.모듈1, 패키지.모듈2
패키지.모듈.(변수, 함수(), 클래스()
모듈과 시작점¶
__name__
: 모듈의 이름이 저장되는 변수 (import로 모듈을 가져왔을 때, 모듈의 이름이 들어감)__main__
: 스크립트 파일을 직접 실행했을 때의 이름
(인터프리터가 최초로 실행한 스크립트 파일의 name)
모듈과 패키지 만들기¶
패키지 만들기¶
main.py
import calcpkg.operation # calcpkg 패키지의 operation 모듈을 가져옴
import calcpkg.geometry # calcpkg 패키지의 geometry 모듈을 가져옴
print(calcpkg.operation.add(10, 20)) #20 # operation 모듈의 add 함수 사용
print(calcpkg.operation.mul(10, 20)) #200 # operation 모듈의 mul 함수 사용
print(calcpkg.geometry.triangle_area(30, 40)) #600.0 # geometry 모듈의 triangle_area 함수 사용
print(calcpkg.geometry.rectangle_area(30, 40)) #1200 # geometry 모듈의 rectangle_area 함수 사용
from calcpkg.operation import add, mul
add(10,20) #20
mul(10,20) #200
패키지에서 from import 응용하기¶
- 1
import calcpkg # calcpkg 패키지만 가져옴
print(calcpkg.operation.add(10, 20)) # operation 모듈의 add 함수 사용
print(calcpkg.operation.mul(10, 20)) # operation 모듈의 mul 함수 사용
print(calcpkg.geometry.triangle_area(30, 40)) # geometry 모듈의 triangle_area 함수 사용
print(calcpkg.geometry.rectangle_area(30, 40)) # geometry 모듈의 rectangle_area 함수 사용
- 2
하위/상위 패키지¶
- 하위패키지
import 패키지.하위패키지.모듈
- 상위패키지
import 패키지.하위패키지.모듈
- 상위폴더 접근
..
- 상위폴더의 상위폴더 접근
...
(위로 갈수록 .이 하나씩 늘어난다) - 독스트링
- 파일 첫 줄에 ‘’’독스트링’’’ 사용하여 문자열 삽입
- 출력할 때는
모듈.__doc__
,패키지.__doc__