본문 바로가기
파이썬

파이썬 __getattr__과 __getattribute__의 차이점

by º기록 2020. 11. 18.
반응형


 

해결 방법

 

__ getattr __ __ getattribute __ 의 주요 차이점은 __ getattr __ 은 속성이 일반적인 방법으로 발견되지 않은 경우에만 호출된다는 것입니다. 누락 된 속성에 대한 대체를 구현하는 데 유용하며 아마도 원하는 두 가지 중 하나 일 것입니다.

__ getattribute __ 는 객체의 실제 속성을보기 전에 호출되므로 올바르게 구현하기가 까다로울 수 있습니다. 매우 쉽게 무한 재귀로 끝날 수 있습니다.

새로운 스타일의 클래스는 object 에서 파생되며, 이전 스타일의 클래스는 명시적인 기본 클래스가없는 Python 2.x의 클래스입니다. 그러나 __ getattr __ __ getattribute __ 중에서 선택할 때 이전 스타일과 새 스타일 클래스의 차이는 중요하지 않습니다.

거의 확실하게 __ getattr __ 을 원합니다.

 

참조 페이지 https://stackoverflow.com/questions/3278077

 

 

반응형

댓글