함수의 사용 계약을 코드에 기록합니다.
docstring은 함수 바로 아래 문자열로 목적과 중요한 규칙을 설명합니다. 타입 힌트는 매개변수와 반환값의 예상 타입을 표시해 편집기와 정적 검사기가 오류를 일찍 찾도록 돕지만 런타임에서 자동 검증하지는 않습니다.
completion_rate의 done: int, total: int와 -> float는 호출하는 쪽에 기대 타입을 알려 주는 표시이고, 바로 아래 문자열이 그 함수의 docstring이 됩니다. 18/24는 0.75이고 f-string의 .1% 형식이 100을 곱해 소수 한 자리 퍼센트로 바꾸므로 진도: 75.0%가 출력됩니다.
list[str], dict[str, int], str | None처럼 복합 타입도 표현할 수 있습니다. 타입은 구현 세부보다 호출자가 알아야 하는 계약을 나타냅니다.
공개 함수에는 이름, 타입, 문서, 예외를 함께 관리하고 pyright나 mypy 같은 정적 검사 도구를 CI에 연결할 수 있습니다.
힌트를 적었다고 잘못된 타입 입력이 자동 차단된다고 믿지 마세요. 외부 입력 검증은 별도입니다.
직접 바꿔보세요반환 타입을 tuple[int, float]로 갖는 통계 함수를 작성하세요.
실행 버튼을 누르면 결과가 여기에 표시됩니다.