## 학습 주제 파이썬 타입 시스템과 정적 타입 체킹 ## 주요 내용 - 타입 힌팅 기초 (typing 모듈) - 제네릭과 타입 변수 - 프로토콜과 덕 타이핑 - mypy, pyright 툴 사용법 ## 참고 자료 **필수 문서** [PEP 484 – Type Hints](https://peps.python.org/pep-0484/) [typing — Support for type hints](https://docs.python.org/3/library/typing.html) [PEP 544 – Protocols: Structural subtyping](https://peps.python.org/pep-0544/) [PEP 585 – Type Hinting Generics In Standard Collections](https://peps.python.org/pep-0585/) **타입 체커 도구** [mypy Documentation](https://mypy.readthedocs.io/en/stable/) [Pyright Documentation](https://github.com/microsoft/pyright) [typing-extensions](https://pypi.org/project/typing-extensions/) **추가 학습 자료** [PEP 586 – Literal Types](https://peps.python.org/pep-0586/) [PEP 589 – TypedDict](https://peps.python.org/pep-0589/) [PEP 612 – Parameter Specification Variables](https://peps.python.org/pep-0612/) [PEP 695 – Type Parameter Syntax](https://peps.python.org/pep-0695/) (Python 3.12+) ## 제출 방법 - **마감**: 금요일 - **Branch**: `sessionN/your-name` ex) session_1/김현수 - **PR 제목**: `[Session N] 이름 - 주제명` - **승인 기준**: 최소 3개 이상의 approve 필요 (관리자 포함) - **리뷰 반영**: 리뷰는 반드시 답변하고, 반영해야함 ## 학습 체크리스트 - [ ] 기본 타입 힌트 작성 (int, str, list 등) - [ ] 함수 시그니처에 타입 힌트 적용 - [ ] Optional, Union 타입 이해 - [ ] 제네릭 타입 (List[T], Dict[K, V]) 사용 - [ ] TypeVar로 제네릭 함수 작성 - [ ] Protocol을 사용한 구조적 서브타이핑 - [ ] mypy 또는 pyright로 타입 체크 실행 - [ ] typing 모듈의 주요 타입 (Callable, Sequence 등) 활용
학습 주제
파이썬 타입 시스템과 정적 타입 체킹
주요 내용
참고 자료
필수 문서
PEP 484 – Type Hints
typing — Support for type hints
PEP 544 – Protocols: Structural subtyping
PEP 585 – Type Hinting Generics In Standard Collections
타입 체커 도구
mypy Documentation
Pyright Documentation
typing-extensions
추가 학습 자료
PEP 586 – Literal Types
PEP 589 – TypedDict
PEP 612 – Parameter Specification Variables
PEP 695 – Type Parameter Syntax (Python 3.12+)
제출 방법
sessionN/your-nameex) session_1/김현수[Session N] 이름 - 주제명학습 체크리스트