뇌를 자극하는 파이썬 질의응답 게시판입니다.
2017-08-11
by 정해성
1990
class 인스턴스 초기화문 def __inti__(self) 볼때 까진 그런가보다 하고 그냥 외우듯 봤는데요.
이터레이터랑 등등을 보고 9장이 끝나가던 무렵 갑자기 메소드 정의 하는 부분이 이상하게 보이기 시작하더라구요.
def 를 함수정의 하는 용도정도로만 사용해 와서. 그냥 함수를 정의하는 문법 정도로 보고 있었는데...
구문 하나하나가 다시 보니 다 이상하게 보이는겁니다.
def __init__(self): ~~~
라고 하면 기존의 __init__ 메소드를 재정의 하는것 처럼 보이거든요.
실제로 일반적인 메소드 였다면 아마 오버라이딩 되어서 본연의 기능을 못했을거에요.
그런데 어떻게 이렇게 잘 돌아가는지 의문이 들었습니다.
def에 비밀이 있는건지. 오브젝트 클래스에 처리해주는 구문이 있는건지. 데이터 타입을 보니. wrapper_descriptor 클래스로 나오는데.
검색해봐도 개념이 잘 잡히지가 않습니다