Choose a default theme

You can change your theme from the menu

Python dataclass

dataclass는 필드 정의를 바탕으로 초기화와 표현 등 반복적인 메서드를 생성하는 Python 기능이다.

원리

@dataclass 데코레이터는 타입 주석이 있는 필드를 읽어 __init__, __repr__, 비교 관련 메서드 등을 설정에 따라 만든다.

예시

좌표 클래스에 x와 y 필드를 선언하면 생성자와 읽기 쉬운 객체 표현을 직접 반복 작성하지 않아도 된다. 필드 기본값도 지정할 수 있다.

주의할 점

타입 주석이 입력 값을 자동으로 검증하는 것은 아니다. 가변 기본값에는 default_factory를 고려하고 frozen 설정이 내부 모든 객체의 깊은 불변성을 보장한다고 가정하지 않는다.

참고 자료