-
[Python] 매직 메소드(2)
클래스 안에 정의된 함수를 ‘메소드’라고 부른다. 메소드 중에서 __로 시작해서 __로 끝나는 메소드들 이 있는데, 이를 매직 메소드 또는 특별 메소드라고 부른다. 파이썬 클린코드를 읽다가 만난 매직 메소드 __call__, __getattribute__를 이 전 포스팅에서 소개했는데 이외에도 엄청 많은 매직메소드들이 있다. 자주 쓰이고 궁금했던 것 위주로 정리해두려고 하고, 잘 모르는 매직메소드를 만날 때 마다 여기에 추가해가려고한다! ^0^ __new__ 새로운 인스턴스를 만들 때 제일 처음으로 실행되는 메소드이며 새로운 object를 return한다. __init__ 인스턴스가 생성된 후 __new__... Read More
-
[Python] 매직 메소드(1) __call__, __getattribute__
클래스 안에 정의된 함수를 ‘메소드’라고 부른다. 메소드 중에서 __로 시작해서 __로 끝나는 메소드들 이 있는데, 이를 매직 메소드 또는 특별 메소드라고 부른다. 가장 유명한 매직 메소드는 __init__이라는 생성자이며, 생성자는 어떤 클래스의 인스턴스가 생성될 때 파이썬 인터프리터에 의해 자동으로 호출되는 메소드이다. instance에서 접근 가능한 메소드와 변수를 보기 위해 ‘dir’ 명령으로 아래와 같이 살펴보면 내가 정의하지 않은 많은 메소드들이 나온다. 클래스 내부에 이미 정의되어있는 매직 메소드들이다.(객체마다 다른 매직 메소드들이 있고 직접 정의할 수도 있다.) #임의의 인스턴스 이름 'inst... Read More
-
[Python] 클래스 내부 객체들
예제 코드 class Car(): """ Car Class Author : Yoo Date : 2019.11.08 """ # 클래스 변수 car_count = 0 price_per_raise = 1.0 def __init__(self, company, details): # 인스턴스 변수 self._company = company self._details = details Car.car_count += 1 def __str__(self): return 'str : {} - {}'.format(self._company, self._details) def __repr__(s... Read More