모듈이란?
비슷한 기능을 가진 함수, 클래스, 상수값 등을 하나의 파일에 모아 놓은 것으로, 코드 재사용을 목적으로 사용한다.
모듈 작성
mymodule1.py
def Hap(a, b):
x = a + b
return x
def Cha(a, b):
return a - b
if __name__ == "__main__":
print('모듈 내에 함수 작성 후 호출')
print(Hap(23, 12)) # 출력: 35
print(Cha(20, 10)) # 출력: 10
mymodule2.py
def Gop(a, b):
return a * b
mymodule3.py
def Nanugi(a, b):
return a / b
모듈 불러오기
readmodule.py
# 1) from 패키지명 import 모듈명
from ex1 import mymodule1
print('mymodule1.__name__=>', mymodule1.__name__) # 출력: ex1.mymodule1
re_hap = mymodule1.Hap(3, 4)
print('두 수의 합:', re_hap) # 출력: 7
re_cha = mymodule1.Cha(5, 4)
print('두 수의 차:', re_cha) # 출력: 1
print(dir(mymodule1)) # 모듈 내 함수와 변수를 확인
print(mymodule1.__file__) # 모듈의 파일 경로 출력
print(mymodule1.__name__) # 모듈의 이름 출력
print('=='*20)
# 2) from 패키지명.모듈명 import 함수명
from ex1.mymodule1 import Hap, Cha
re_hap = Hap(10, 20)
print('두 수의 합:', re_hap) # 출력: 30
re_cha = Cha(30, 15)
print('두 수의 차:', re_cha) # 출력: 15
print('=='*20)
# 3) PythonPath가 설정된 폴더 내의 모듈 읽기
import mymodule2
print('곱은', mymodule2.Gop(3, 4)) # 출력: 12
# 4) PythonPath에 설정된 경로가 아닌 경우
import sys
sys.path.append(r'c:/python') # 외부 경로 추가
import mymodule3
print('나누기는 ', mymodule3.Nanugi(5, 3)) # 출력: 1.666...