개발 이야기/Python

Python - 16. 모듈.

Crazy Lazy 2021. 7. 26. 21:33

1. 모듈의 정의 및 특징.

- 함수나 변수 또는 클래스들을 모아놓은 파일.

- 파이썬에서 기본제공하는 모듈이 있음.

  (대표적 모듈 > sys:인터프리터 제어, os:운영체제 제어, re:정규표현식 이용 문자열 모듈, webbrowser:웹브라우저 제어)

- 사용자가 임의로 모듈을 생성 가능.

- 모듈은 배포 또는 사용이 가능.

- 확장자가 py 로 만들어진 파이썬 파일은 모두 모듈.

 

2. 모듈 사용법.

- py 로 확장자를 지정하여 모듈 생성.

- import 를 사용하여 모듈 사용.

- import 는 동일 디렉토리에 있는 파일이어야 함.

  (또는 sys.path 에 등록된 디렉토리, PYTHONPATH 에 등록된 디렉토리 도 가능.)

 

## 모듈 생성 예시.
# 1. 빈 파일 생성 후 아래 내용 기재.
def add(a,b):
    return a + b

def minus(a,b):
    return a - b

# 2. module_test1.py 로 파일 저장.



## 모듈 사용 예시. (동일 디렉토리인지 여부 확인 필요)
# 모듈 지정 함수 사용.
from module_test1 import add
add(1,2)		# 결과 : 3
minus(2,1)		# 결과 : 오류

# 모듈 부분 사용.
from module_test1 import add, minus
add(1,2)		# 결과 : 3
minus(2,1)		# 결과 : 1

# 모듈 전체 사용.
import module_test1		# from module_test1 import * 도 똑같이 모두 사용 가능.
print(module_test1.add(1,2))	# 결과 : 3
print(module_test1.minus(2,1))	# 결과 : 1

 

3. 모듈 사용처에 따른 분기 방법.

- __name__ 을 통해 사용처를 확인하여 분기 가능.

# 하기 내용으로 m1.py 파일 생성.
def add(a,b):
    return a + b

def minus(a,b):
    return a - b

if __name__ == "__main__":
    print('test')


# console 에서 python m1.py 실행 시 test 가 출력됨.

# import 시 test 출력되지 않음. (import 시엔 모듈명이 __name__ 으로 들어가기에)