- 프로젝트를 진행하면서 알게 된 개념들을 정리하는 공간이다.
Python 메소드
클래스 메소드 (Class Method)
- 정의 방법: @classmethod 데코레이터를 사용하여 정의한다.
- 매개변수: 첫 번째 매개변수로
cls (클래스 자체)를 받는다.
- 호출 방법: 클래스 메소드는 클래스 이름을 사용하여 호출한다.
- 접근 범위: 클래스 레벨 데이터에 접근 가능, 인스턴스 레벨의 데이터 불가능
class MyClass:
class_variable = 0
@classmethod
def my_class_method(cls):
cls.class_variable += 1
인스턴스 메소드 (Instance Method)
- 정의 방법: 인스턴스 메소드는 일반적인 메소드, 데코레이터를 사용하지 않고 정의한다.
- 매개변수: 첫 번째 매개변수로
self를 받는다.
- 호출 방법: 인스턴스 메소드는 해당 클래스의 인스턴스를 사용하여 호출한다.
- 접근 범위: 인스턴스 메소드는 해당 인스턴스의 데이터와 클래스 변수에 모두 접근 가능
- 용도: 해당 인스턴스의 상태를 조작하거나 인스턴스 수준의 작업을 수행
class MyClass:
def __init__(self, value):
self.instance_variable = value
def my_instance_method(self):
self.instance_variable += 1