728x90
@classmethod는 파이썬에서 사용되는 데코레이터(decorator)
이 데코레이터를 클래스 메서드(class method) 위에 사용하면 해당 메서드가 클래스에 속하는 메서드임을 나타낸다.
클래스 메서드는 인스턴스가 아닌 클래스 자체에 연관된 작업을 수행하는 메서드.
일반적인 인스턴스 메서드와는 달리, 클래스 메서드는 첫 번째 매개변수로 클래스 자체를 받는 cls 매개변수를 사용한다.
클래스 메서드는 클래스 레벨의 작업을 수행하는 데 유용함. 예를 들어, 클래스 변수를 조작하거나 변경하는 작업, 클래스의 다른 메서드를 호출하거나 인스턴스를 생성하는 작업 등을 수행할 수 있다.
- @classmethod를 사용하여 클래스 메서드를 정의하고 호출하는 간단한 예시
class MyClass:
class_variable = 10
@classmethod
def class_method(cls):
print("This is a class method")
print("Value of class_variable:", cls.class_variable)
# 클래스 메서드 호출
MyClass.class_method()
- 결과
This is a class method
Value of class_variable: 10
클래스 메서드는 클래스 레벨에서 작업을 수행하기 때문에 인스턴스를 생성하지 않고도 호출할 수 있다.
728x90
'개발 > Python' 카테고리의 다른 글
[Python] append 와 extend 차이 (113) | 2024.11.01 |
---|---|
[Python] ENUM 타입 사용하기 (0) | 2023.06.10 |
[FastAPI] FastAPI 시작하기 Response Model ~ File 요청 (1) | 2023.05.17 |
[FastAPI] FastAPI 시작하기 Request Body~Parameter Validations (0) | 2023.05.16 |
[FastAPI] FastAPI 시작하기 도입부~쿼리 매개변수 (0) | 2023.05.15 |