파이썬에서 Function과 method의 차이

파이썬에서 Function과 method의 차이

파이썬에서는 function과 method 모두 호출 가능한(callable) 객체입니다. 하지만 이 둘은 차이가 있습니다.


callable 관련 글


Function(함수)

function(함수)은 모듈에 정의된 독립적인 함수를 의미합니다.

def im_function():
    return "This is a Function!"

이렇게 클래스나 객체와는 상관없이, 모듈에서 직접 호출할 수 있는 함수를 말합니다.

Method(메서드)

method(메서드)는 클래스나 객체에 속한 함수를 의미합니다.

class ImClass:
    def im_method(self):
        return "This is a method!"

이처럼 클래스나 객체에 속해서 객체의 상태를 변경하거나 객체의 속성에 접근할 수 있는 함수를 말한다.

이 둘은 접근 방식에도 차이가 존재한다. 당연히 클래스나 객체에 속해 있는지, 아닌지에 따른 접근 방식의 차이이다.

def im_function():
    return "This is a Function!"

class ImClass:
    def im_method(self):
        return "This is a method!"

im_instance = ImClass()
print(im_instance.im_method())
print(im_function())

im_method는 ImClass 클래스에 속한 메서드이므로, im_instacne 객체에 대해 호출해야 하고, im_function은 모듈에 속한 함수이므로 함수명으로 직접 호출할 수 있습니다.


자바에서의 function과 method 차이


 

 

 


부족하거나 잘못된 내용이 있을 경우 댓글 달아주시면 감사하겠습니다.

이 글에 부족한 부분이 존재할 경우 추후에 수정될 수 있습니다.


 

'Python > Python' 카테고리의 다른 글

Subtype in Python  (0) 2023.03.30
First Class Function  (0) 2023.03.30
Python 에서의 Lambda method  (0) 2023.02.22
참조에 의한 변수와 객체 연결  (0) 2023.01.11
Python에서 집합을 사용하는 이유  (0) 2023.01.10