epydoc 및 Sphinx 문서 생성기는 모두 형식이 any/all 함수 매개 변수 중 무엇이어야하는지 주석을 달 수 있습니다.python 함수를 강제로 docstring에서 매개 변수 유형
내 질문은 : 거기가 문서화 문자열에을 문서화 할 때 은 (실행시) 이러한 유형을 적용하는 방식 (또는 모듈)입니다. 이것은 강력한 형식의 (컴파일 타임 검사)이 아니지만 회사 유형 (런타임 검사)이라고 할 수 있습니다. 어쩌면 "SemanticError"
가 이상적으로 이미 xkcd에 따라, "import antigravity
"모듈과 유사한 (모듈 같은) 뭔가가있을 것이고,이 "firm_type_check"을 제기 ... 더 나은 여전히 "ValueError를"을 제기하거나, 모듈은 이미 다운로드 할 수있는 곳에 존재합니다. FYI
다음과 같이 epydoc 및 sphinz 대한 참조 문은 :
epydoc: 함수 및 메소드 파라미터 :
- 파라미터 : P : ... # 함수의 매개 변수 (P)의 설명 또는 방법.
- @type p : ... # 매개 변수 p의 예상 유형입니다.
- @return : ... # 함수 또는 메서드의 반환 값입니다.
- @rtype : ... # 함수 또는 메서드의 반환 값 유형입니다.
- @keyword p : ... # 키워드 매개 변수 p에 대한 설명.
- @raise e : ... # 함수 또는 메서드가 적용되는 상황에 대한 설명 예외가 발생합니다. e. 이 필드
Sphinx: 내부 파이썬 객체 기술 지침, 나머지 필드 목록 인정 멋지게 포맷 :
- PARAM, 매개 변수, 인수, 인수, 키, 키워드 : 매개 변수의 설명.
- 유형 : 매개 변수의 유형.
- raises, raise, except, exception : 예외가 발생하면 예외가 발생합니다.
- var, ivar, cvar : 변수에 대한 설명입니다.
- 반환 값, 반환 값 : 반환 값에 대한 설명.
- rtype : 반환 형식입니다.
귀도가 언급 한 내용은 mail.python.org이고의 Jukka Lehtosalo가 작성한 것입니다. CMIIW : mypy를 py3 모듈로 가져올 수 없습니다.가가 문서화 문자열을 사용하지 않는 것이
유사 유래 질문 자체 : 제가 알기로
docstrings에서는 읽을 수 없지만 https://pypi.python.org/pypi/typedecorator는 데코레이터로 유형을 적용하는 좋은 방법입니다. 또한 Python 3 주석 (아래 http://stackoverflow.com/a/27402144/363836에서 제안)을 사용하여 지원합니다. – jwmullally
Python> 3.5의 경우 : https : //www.python.org/dev/peps/pep-0484/ – ederag