처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈
퀴즈 / Python / 문제

Python __getattr__과 __getattribute__의 차이점으로 올바른 것은?

어려움 freeCodeCamp
보기 및 정답
A __getattr__은 속성을 찾지 못했을 때만 호출되고, __getattribute__는 모든 속성 접근 시 항상 호출된다
B __getattribute__는 속성을 찾지 못했을 때만 호출되고, __getattr__은 모든 속성 접근 시 항상 먼저 호출된다
C __getattr__과 __getattribute__ 두 메서드는 완전히 동일한 시점에 호출되며 기능상 차이가 없다
D __getattr__은 클래스 변수에만, __getattribute__는 인스턴스 변수에만 적용된다

해설

__getattribute__는 객체의 모든 속성 접근 시 무조건 호출되므로 무한 재귀에 주의해야 합니다. __getattr__은 일반적인 속성 탐색에서 속성을 찾지 못한 경우(AttributeError가 발생할 상황)에만 호출되는 '폴백' 메서드입니다.

코딩, 제대로 배우고 싶다면?

개념 확인은 퀴즈로, 실력은 실전 프로젝트로.
투더제이 코딩클래스에서 시작하세요.

정규반 살펴보기