가이드라인

객체의 시작과 끝, 행동을 정의하는 방법

파이썬에서 클래스는 객체를 만드는 설계도입니다.

이번 수업에서는 클래스의 구성 요소인 생성자, 소멸자, 메서드에 대해 알아보겠습니다.


객체의 시작을 정의하는 생성자

생성자(Constructor)는 객체가 만들어질 때 자동으로 호출되는 메서드입니다.

파이썬에서 생성자는 __init__으로 정의하며, 객체가 생성될 때 필요한 초기값을 설정합니다.

생성자 정의
class Car: # 생성자 정의 def __init__(self, brand, model, year): # 객체의 속성 설정 self.brand = brand self.model = model self.year = year print(f"{self.brand} {self.model} 생성") # 브랜드 'Lamboo', 모델 'Avent', 연식으로 2021인 자동차 객체 생성 lambo = Car("Lamboo", "Avent", 2021) # 출력: Lambo Avent 생성 # 브랜드 'Tesli', 모델 'Model Z', 연식으로 2023인 자동차 객체 생성 tesla = Car("Tesli", "Model Z", 2023) # 출력: Tesli Model Z 생성

__init__ 코드를 통해 Car 객체가 생성될 때마다 자동차의 브랜드, 모델, 연도가 설정되며, 브랜드와 모델이 출력됩니다.


객체의 끝을 정의하는 소멸자

소멸자(Destructor)는 객체가 소멸될 때 호출됩니다.

파이썬에서는 __del__로 정의하며, 주로 객체가 삭제될 때 정리하는 작업을 수행합니다.

소멸자 정의
class Car: # 소멸자 정의 def __del__(self): # 객체가 소멸될 때 출력 print(f"{self.brand} {self.model}가 소멸됨")

객체의 행동을 정의하는 메서드

메서드(Method)는 객체가 수행할 행동을 정의합니다.

주로 객체의 상태를 변경하거나 특정 기능을 수행합니다.

메서드 정의
class Car: def __init__(self, brand, model, year): self.brand = brand self.model = model self.year = year def start_engine(self): print(f"{self.brand} {self.model}의 엔진 시동") def change_year(self, year): self.year = year print(f"{self.brand} {self.model}의 연식을 {year}로 변경") # 브랜드 'Lamboo', 모델 'Avent', 연식으로 2021인 자동차 객체 생성 lambo = Car("Lamboo", "Avent", 2021) # 출력: Lamboo Avent의 엔진 시동 lambo.start_engine() # 출력: Lamboo Avent의 연식을 2023으로 변경 lambo.change_year(2023)

위 코드에서 start_engine 메서드는 자동차의 엔진을 켜는 기능을 표현하며, change_year 메서드는 자동차의 연식을 변경합니다.

메서드를 정의할 때 포함되는 self는 해당 메서드를 호출한 객체 자신을 가리키며, 메서드를 정의할 때 반드시 포함되어야 합니다.

Mission
0 / 1

다음 문장에서 빈칸에 들어갈 적절한 단어를 고르세요.

파이썬에서 클래스의 객체가 생성될 때 호출되는 메서드는 입니다.
소멸자
메서드
생성자
속성

가이드라인

AI 튜터

배포

디자인

업로드

수업 노트

즐겨찾기

도움말

코드 에디터

코드 실행
코드 생성

실행 결과