dataclass - 데이터 담는 그릇
거래 내역 하나에는 여러 정보가 들어갑니다: id, 날짜, 타입, 카테고리, 금액...
이걸 그냥 변수 여러 개로 관리하면 헷갈립니다. dataclass는 "이런 정보를 담는 상자"를 선언하는 방법입니다.
python
from dataclasses import dataclass
@dataclass
class Transaction:
"""거래 내역 하나를 담는 상자"""
id: str # 거래 고유 번호
type: str # income(수입) 또는 expense(지출)
date: str # YYYY-MM-DD 형식
amount: int # 양수만 허용
category: str # food, transport 등
memo: str = "" # 선택 사항 (없으면 빈 문자열)
tags: list = None # 선택 사항@dataclass를 붙이면__init__(상자 초기화 코드)을 자동으로 만들어줌- 요구사항: 데이터 모델은 dataclass 또는 그에 준하는 구조로 정의
출처: Codyssey-B1/B2-1