모듈(Module) - 개념, 생성, 호출, 종류 알아보기

반응형

# 모듈(Module)이란?

  • 코드를 논리적으로 묶어서 관리하고 사용 할 수 있도록 하는 것
  • 하나의 파일(파이썬.py)이 하나의 모듈

 

# 모듈의 장점

  • 중복 코딩의 줄임 > 필요시 호출하여 사용
  • 부분적으로 분리하여 모듈로 설계 > 구조적 프로그래밍 가능
  • 모듈마다 별도의 이름 공간 제공 > 동일한 이름의 함수나 변수를 모듈마다 정의 가능

 

# 모듈과 함수의 차이

  • 함수 : 파일 내 특정한 동작을 수행하는 독립된 코드 (같은 파일 내 같은 이름 공간 사용)
  • 모듈 : 파일 단위로 코드를 묶어 사용, 함수 등의 코드를 파일로 저장하여 비슷한 작업을 할 때 추 후 사용 가능

 

# 모듈의 호출 방법

  • import 모듈명 : import 이후에 호출할 모듈명 입력
    • import란? 지정한 모듈을 호출하여 코드 실행
  • import 모듈명 as 단축어 : as(alias)를 이용해 긴 모듈명을 축약해 사용 할 수 있음
    • as 사용 예시 : import random as r > random 모듈 사용시 'r'로 모듈 사용 가능
  • from 모듈 import 함수 : 모듈 내 특정 함수만 호출 가능

 

# 모듈의 특징

  • 모듈마다 각각 이름 공간이 다르기 때문에 같은 변수라도 다른 모듈에서 불러와 다르게 사용 가능
  • 사용시 모듈을 검색하는 목록 안에 포함되어 있어야 함
  • 모듈 검색 목록 및 순서
    1. 이미 메모리에 로딩된 모듈
    2. 현재 디렉토리에 있는 .py 파일
    3. 환경변수(PYTHONPATH)에 등록된 경로에 있는 파일
    4. 표준 모듈 목록
  • 상황에 맞게 모듈 수정 가능

 

# 모듈 생성하기

  1. 모듈화 할 코드를 작성
  2. 작성된 코드를 파일(파일명.py)로 저장

예시) test.py에 두 수의 합을 구하는 add를 정의하고 저장

#test.py 저장할 파일이름
def add(a, b):
	return a+b
# 두 수의 합을 구하는 add함수 정의

 

# 모듈 불러오기

  1. 모듈 호출 -> import 모듈명
    (from 모듈명 import 함수로 호출이 가능하다)
  2. 모듈의 함수 호출 -> 모듈명.함수명

예시) test 모듈을 불러와서 add 함수에 1과 2의 값 입력

import test
# test 모듈 호출
# = from test import add

test.add(1,2)
>>> 3

 

# 모듈의 종류

  1. 표준 모듈 - 자주사용하는 것들을 모듈화하여 기본적으로 제공 되는 것
  2. 사용자 정의 모듈 - 사용자가 자주 사용하는 것들을 모듈화하여 사용하는 것
  3. 외부 모듈 (3rd party) - 공개 소스 라이센스 계약에 따라 개발한 소프트웨어를 다른 사용자가 사용하는 것
반응형