본문 바로가기
Cording/Python_Basic

Python] 함수, 메소드, 모듈, 패키지, 라이브러리 구분 차이 개념 정리

by €€£¥ 2023. 1. 5.

코딩 공부를 하면서 분명히 설명을 들을 때는 고개를 끄덕이며 이해하고 지나갔는데 막상 혼자 코딩 공부를 하다보면 자꾸 헷갈리게 되는 개념이 함수 (Function)와 메소드 (Method) 그리고 모듈 (Module)과 패키지 (Package), 라이브러리 (Library)의 구분과 차이 이다. 이 용어들은 파이썬에서만 사용되는 용어가 아니다 보니 인터넷에서도 혼동해서 사용하는 경우가 많아 필자와 같은 코알못을 위해 개념을 확실히 정리해 보겠다.

 

1. 함수 (Function)와 메소드 (Method) 개념 구분 차이

함수는 특정의 작업을 독립적으로 수행하는 단위 이고, 메소드는 클래스 안에 포함되어 있는 함수를 말한다. ('클래스 함수'라고도 한다.) 즉, 함수는 메소드의 개념을 포함하는 상위 개념이다. 

함수 (Function)  ⊃  메소드 (Method)

함수 (Function) 예시

def function(val_1):  # 함수(Function)의 예
	return val_1 * 2

print(fuction(3))

 

메소드 (Method) 예시

class Universe():
	def method(self, val_2):	# 메소드 (Method)의 예
    	returtn val_2 * 3
        
inst = Universe()
print(inst.method(3))

 

 

2. 라이브러리 (Library),  패키지 (Package), 모듈 (Module) 개념 구분 차이

  • 라이브러리는 여러 패키지와 모듈을 모아둔 것을 의미한다. 판다스나 셀레니움과 같은 것들이 라이브러리이다.
  • 패키지는 특정 기능과 관련되어 있는 여러가지 모듈을 모아 둔 폴더이다. 
  • 모듈은 함수와 변수, 클래스를 모아둔 것 이다. 일반적으로 파일 하나(ex. '모듈.py')가 모듈이다. 
라이브러리 ≥ 패키지 ≥ 모듈 

댓글