기능 주석 : PEP-3107self를 반환하는 Python3 메서드에 주석을 달려면 어떻게해야하나요?
배경 : Linux의 Python 사용자는 3.4x입니다. 함수 매개 변수와 반환 형식에 주석을다는 것이 도움이된다는 것을 알았습니다. IDE는 이러한 방법을 사용할 때 더 나을 수 있습니다.
질문 : 자체 연쇄 메서드의 경우 메서드 반환 값에 어떻게 주석을 추가 할 수 있습니까? 내가 클래스 이름을 사용하는 경우, 파이썬은 컴파일시에 예외가 발생합니다 : NameError: name 'X' is not defined
샘플 코드 : 트릭으로
class X:
def yaya(self, x: int):
# Do stuff here
pass
def chained_yaya(self, x: int) -> X:
# Do stuff here
return self
을, 난 그냥 클래스 선언하기 전에 X = None
를 넣어 경우, 그것을 작동합니다. 그러나, 나는이 기술에서 unforseen, 부정적인 부작용이 있는지 모르겠습니다.
문자열 솔루션이 공식적으로되었습니다 (결과적으로 PyCharm이이를 완벽하게 지원합니다) - 여기를보십시오 : https://www.python.org/dev/peps/pep- 0484/# forward-references. –