찾다

 >  Q&A  >  본문

python - 프로그램을 실행할 때 오류가 발생합니다

으아악

이 프로그램을 실행할 때 점수가 개인 변수인 경우에만 정상적으로 실행될 수 있습니다. 속성의 일부 기능인가요? self.score = 점수로만 설정하면 '파이썬 객체를 호출하는 동안 최대 재귀 깊이가 초과되었습니다'라는 오류가 나타납니다. 답변 부탁드립니다

过去多啦不再A梦过去多啦不再A梦2741일 전793

모든 응답(1)나는 대답할 것이다

  • PHP中文网

    PHP中文网2017-06-22 11:54:35

    이러한 혼란의 이유는 여러분이 Python의 getter 데코레이터와 setter 데코레이터에 충분히 익숙하지 않기 때문입니다

    score 속성에 대해 setter 데코레이터를 선언한 후 실제로 점수를 할당하는 것은 setter 데코레이터에 바인딩된 메서드를 호출하는 것입니다

    따라서 setter가 액세스하려는 멤버 변수는 setter 메서드와 동일한 이름을 가질 수 없습니다. 그렇지 않으면 끝없는 반복과 같습니다.

    으아악

    물론, 최대 반복 깊이를 초과하는 오류가 보고됩니다

    회신하다
    0
  • 취소회신하다