Python

(파이썬) Car: 기본 클래스 만들기, 생성자 속성 메소드

코딩ABC 2023. 12. 5. 11:03
반응형

파이썬에서 차(Car)를 모델링하는 아주 기본적인 클래스를 만들어 보겠습니다.

차량 정보는 제조업체, 모델, 년식 정도를 표현해 보겠습니다.

 

1.  필드 선언

아주 기본적인 개념으로 필드만 선언해서 Car 클래스를 만들어 보겠습니다.

class Car:
    make = ""
    model = ""
    year = 0

car1 = Car()
car1.make = "현대자동차"
car1.model = "쏘나타"
car1.year = 2024

print(f"제조업체: {car1.make}, 모델: {car1.model}, 년식: {car1.year}")

(Output)

제조업체: 현대자동차, 모델: 쏘나타, 년식: 2024

 

2. 메소드(method)

위에서 작성한 클래스를 수정해서 메소드(method)를 추가해 보겠습니다.

메서드에서 필드를 사용할 때는 매개변수에 self 키워드를 사용합니다.

class Car:
    make = ""
    model = ""
    year = 0

    def setMake(self, m):
        self.make = m
    def setModel(self, m):
        self.model = m
    def setYear(self, y):
        self.year = y

    def PrintInfo(self):
        print(f"제조업체: {self.make}, 모델: {self.model}, 년식: {self.year}")

car1 = Car()
car1.setMake("현대자동차")
car1.setModel("쏘나타")
car1.setYear(2024)
car1.PrintInfo()

(Output)

제조업체: 현대자동차, 모델: 쏘나타, 년식: 2024

 

3. 생성자(constructor)

위에서 작성한 클래스에 생성자를 추가합니다.

생성자는 "__init__(self, ...)" 형식으로 만듭니다.

생성자를 만들면 Car 클래스의 인스턴스를 다음과 같이 생성할 수 있게됩니다.

 

Car  c1 = Car()

Car c2 = Car('현대자동차', '쏘나타', 2024)

 

class Car:
    make = ""
    model = ""
    year = 0

    # 생성자
    def __init__(self, mk, md, y):
            self.make = mk
            self.model = md
            self.year = y
            
    def setMake(self, m):
        self.make = m
    def setModel(self, m):
        self.model = m
    def setYear(self, y):
        self.year = y

    def PrintInfo(self):
        print(f"제조업체: {self.make}, 모델: {self.model}, 년식: {self.year}")

car1 = Car('현대자동차', '쏘나타', 2024)
car2 = Car('기아자동차', '쏘렌토', 2023)

car1.PrintInfo()
car2.PrintInfo()

(Output)

제조업체: 현대자동차, 모델: 쏘나타, 년식: 2024
제조업체: 기아자동차, 모델: 쏘렌토, 년식: 2023

(파이썬) Car: 기본 클래스 만들기, 생성자 속성 메소드

 

 

반응형