이 프로그램을 실행할 때 점수가 개인 변수인 경우에만 정상적으로 실행될 수 있습니다. 속성의 일부 기능인가요? self.score = 점수로만 설정하면 '파이썬 객체를 호출하는 동안 최대 재귀 깊이가 초과되었습니다'라는 오류가 나타납니다. 답변 부탁드립니다
PHP中文网2017-06-22 11:54:35
이러한 혼란의 이유는 여러분이 Python의 getter 데코레이터와 setter 데코레이터에 충분히 익숙하지 않기 때문입니다
score 속성에 대해 setter 데코레이터를 선언한 후 실제로 점수를 할당하는 것은 setter 데코레이터에 바인딩된 메서드를 호출하는 것입니다
따라서 setter가 액세스하려는 멤버 변수는 setter 메서드와 동일한 이름을 가질 수 없습니다. 그렇지 않으면 끝없는 반복과 같습니다.
으아악물론, 최대 반복 깊이를 초과하는 오류가 보고됩니다