PHpullh

PYTHON · 기초 문법

Final 상수

Final로 재할당 불가 변수를 선언하여 실수로 값이 변경되는 것을 방지합니다.

기초 문법중급Finalfinal상수typing불변

핵심 설명

Final로 재할당 불가 변수를 선언하여 실수로 값이 변경되는 것을 방지합니다.

Python code

from typing import Final, final

# Final 변수 — 재할당 금지
MAX_RETRIES: Final = 3
API_URL: Final[str] = "https://api.example.com"

# mypy가 다음을 에러로 감지
# MAX_RETRIES = 5  # Cannot assign to final name

# Final과 클래스
class Config:
    DEBUG: Final = False
    VERSION: Final[str] = "1.0.0"

    # @final 데코레이터 — 오버라이드 금지
    @final
    def get_version(self) -> str:
        return self.VERSION

# @final 클래스 — 상속 금지
@final
class Singleton:
    _instance = None

print(f"MAX_RETRIES={MAX_RETRIES}")
print(f"VERSION={Config.VERSION}")

학습 팁

Final은 상수 의도를 명확히 하고 타입 체커가 실수를 잡아줍니다. ALL_CAPS 관례와 함께 사용하세요.

주의할 점

Final은 런타임에 재할당을 막지 않습니다. 실제 불변성은 타입 체커(mypy)에서만 보장됩니다.

자주 묻는 질문

Final 상수란 무엇인가요?

Final 로 재할당 불가 변수를 선언하여 실수로 값이 변경되는 것을 방지합니다.

Final 상수 학습 시 주의할 점은 무엇인가요?

Final 은 런타임에 재할당을 막지 않습니다. 실제 불변성은 타입 체커(mypy)에서만 보장됩니다.

Continue Learning

Python 학습을 이어가세요

총 200개의 독립 HTML 학습 문서 중 하나입니다. 각 문서는 고유 URL과 canonical 메타데이터를 가집니다.