타입 힌트 기초
타입 힌트 기초
🎯 이 lesson 을 읽고 나면
이 lesson 을 다 읽고 나면 아래 3가지를 자신 있게 할 수 있습니다.
- ▸✅ typing.Optional · Union · Literal · TypedDict 사용
- ▸✅ mypy --strict 통과시키는 패턴
- ▸✅ Generic + TypeVar 로 재사용 가능 타입
학습 목표를 체크리스트로 두고 다 답할 수 있게 되면 lesson 을 닫으세요.
타입 힌트 — 코드 + 실행 결과
x: int = 변수·함수에 타입 표기. Python 3.5+ (PEP 484). 런타임 영향 X, IDE·mypy 가 활용.
1. 함수에 타입
⚠️ Python 은 타입 힌트를 강제 X. 단순 표기. mypy·pyright 가 정적 검사.
2. 자주 쓰는 타입
3. Optional·Union (None 가능)
4. Callable·복잡 타입
5. 클래스 + 타입
6. 타입 검사 — mypy
한 줄 요약
def f(x: T) -> R: + list[int] + str | None 3개면 90% 커버.
💡 핵심 포인트
1. 타입 힌트는 힌트일 뿐, 강제 아님
2. Python 3.9+: list[str], dict[str, int]
3. Python 3.8-: from typing import List, Dict
Python은 간결하고 읽기 쉬운 문법으로 다양한 분야에 활용됩니다. 인터프리터 언어로 REPL 환경에서 즉시 실행 가능합니다. PEP 8 코딩 스타일 가이드를 따르고, Black/autopep8으로 자동 포맷팅합니다. 타입 힌트(type hints)로 코드 가독성과 IDE 지원을 향상시킵니다. pip로 패키지 관리, venv/conda로 가상환경을 구성합니다.
🐍 실행해보기 — 타입 힌트 기초
🤖 AI 에게 이렇게 요청해보세요
이 lesson 의 개념을 알면 AI 에게 구체적으로 지시할 수 있습니다. 막연한 "고쳐줘" 가 아니라 어휘를 가진 요청 — 그게 토큰 절약의 출발점입니다.
- ▸"이 함수 시그니처에 typing.Optional · Literal · TypedDict 사용해 정밀하게 타입 붙여줘"
- ▸"이 코드에 mypy --strict 통과하도록 타입 보강해줘"
왜 이게 토큰을 줄이나
개념을 모를 땐 AI 답변을 받고도 "그게 뭐예요?" 를 다시 물어야 합니다. 그 "다시 물음" 이 토큰을 잡아먹습니다. 개념 한 번 익혀두면 대화가 한 번에 끝납니다.