🧑💻 Python 클래스 실습: Person 클래스 정의 및 사용
✅ 문제 설명
- 목표: Person 클래스를 정의하고, name과 age 속성을 설정합니다.
- 기능: greet라는 메서드를 통해 인사 메시지를 반환하도록 구현합니다.
- 테스트: '홍길동'이라는 이름과 20살의 나이를 가진 객체를 생성하고, greet 메서드를 호출하여 인사 메시지를 출력하세요.
✅ 문제 해결 코드
# 1. 클래스 정의
class Person:
# 2. 생성자 메서드 (__init__)로 name과 age 초기화
def __init__(self, name, age):
self.name = name # 이름 속성
self.age = age # 나이 속성
# 3. greet 메서드 정의 - 인사 메시지 반환
def greet(self):
return f"안녕하세요, 제 이름은 {self.name}입니다. 나이는 {self.age}살입니다."
# 4. '홍길동' 객체 생성
person = Person("홍길동", 20)
# 5. greet 메서드 호출 및 출력
print(person.greet())
📋 출력 예시
안녕하세요, 제 이름은 홍길동입니다. 나이는 20살입니다.
🔍 코드 프로세스 흐름
✅ 1. 클래스 정의
- class Person으로 Person 클래스를 정의합니다.
- 클래스란 객체를 생성하기 위한 틀입니다.
✅ 2. 생성자 메서드 __init__
- 객체 생성 시 자동으로 호출되어 속성을 초기화합니다.
- self.name = name: 객체의 name 속성에 입력받은 값을 저장합니다.
- self.age = age: 객체의 age 속성에 입력받은 값을 저장합니다.
✅ 3. greet 메서드 정의
- self를 통해 객체의 속성에 접근합니다.
- return을 사용하여 인사 메시지를 반환하도록 합니다.
- 메시지에 self.name과 self.age를 포맷팅하여 출력합니다.
✅ 4. 객체 생성
- person = Person("홍길동", 20)
- Person 클래스를 통해 객체를 생성합니다.
- 홍길동은 name에, 20은 age에 전달됩니다.
✅ 5. 메서드 호출 및 출력
- print(person.greet()): greet() 메서드를 호출하여 반환된 문자열을 출력합니다.
🧩 왜 return을 사용할까?
- return을 사용하면 메서드가 값을 반환하게 됩니다.
- 반환된 값을 출력하거나, 다른 곳에 재활용할 수 있습니다.
- print()를 메서드 안에 사용하면, 단순히 그 시점에서만 출력되고, 결과를 재활용하기 어렵습니다.
즉, return은 코드의 재활용성을 높여줍니다. 🚀
⚠️ 주의사항
- __init__은 **int가 아니라 init**으로 작성해야 합니다.
- 속성 지정 시, **self.**를 꼭 사용해야 합니다.
- 메서드 정의 시, **def greet(self):**처럼 작성하세요.
- 메서드 호출은 반드시 인스턴스 객체로 진행해야 합니다 (person.greet()).
✅ 결론
- Python에서 클래스를 정의하고 객체를 생성하는 기본적인 방법을 익혔습니다.
- __init__ 메서드로 객체의 속성을 초기화하고, greet 메서드로 동작을 정의했습니다.
- **return**을 사용해 메서드가 값을 반환하도록 하여 재활용성을 높였습니다.
이와 같은 방식으로 클래스를 정의하면 다양한 객체 지향 프로그래밍 문제를 해결할 수 있습니다! 🚀
클래스와 객체 지향 프로그래밍은 Python을 더 효율적으로 활용하는 방법입니다. 앞으로도 다양한 클래스를 만들어보세요!
📐 Python 클래스 실습: Rectangle 클래스 정의 및 사용
✅ 문제 설명
- 목표: Rectangle 클래스를 정의하고, height(높이)와 width(너비)를 속성으로 설정합니다.
- 기능: area라는 메서드를 통해 사각형의 면적을 반환하도록 구현합니다.
- 테스트: 높이가 10, 너비가 5인 객체를 생성하여, area 메서드를 호출해 면적을 출력하세요.
✅ 문제 해결 코드
# 1. 클래스 정의 class Rectangle: # 2. 생성자 메서드 (__init__)로 height와 width 초기화 def __init__(self, height, width): self.height = height # 인스턴스 변수: 높이 self.width = width # 인스턴스 변수: 너비 # 3. area 메서드 정의 - 면적 계산 후 반환 def area(self): return self.height * self.width # 면적 = 높이 * 너비 # 4. Rectangle 객체 생성 rectangle = Rectangle(10, 5) # 5. area 메서드를 호출하여 면적 출력 print(rectangle.area())
📋 출력 예시
50
🔍 코드 프로세스 흐름
✅ 1. 클래스 정의
- class Rectangle으로 Rectangle 클래스를 정의합니다.
- 클래스란 객체를 생성하기 위한 틀이며, 사각형의 특성을 갖게 됩니다.
✅ 2. 생성자 메서드 __init__
- 객체가 생성될 때 자동으로 호출되어, 속성을 초기화합니다.
- self.height = height: 입력받은 height 값을 인스턴스 변수로 설정합니다.
- self.width = width: 입력받은 width 값을 인스턴스 변수로 설정합니다.
✅ 3. area 메서드 정의
- self.height * self.width로 면적을 계산하여 반환합니다.
- self는 현재 인스턴스를 참조하며, 이를 통해 인스턴스 변수에 접근합니다.
✅ 4. 객체 생성
- rectangle = Rectangle(10, 5)로 객체를 생성합니다.
- height는 10, width는 5로 설정됩니다.
✅ 5. 메서드 호출 및 출력
- print(rectangle.area()): area() 메서드를 호출하여 면적을 출력합니다.
🧩 self가 중요한 이유
- self는 인스턴스 자신을 참조합니다.
- 인스턴스 변수는 반드시 self.변수명으로 선언하고 접근해야 합니다.
- self 없이 변수를 정의하면 지역 변수로 처리되어, 클래스의 다른 메서드에서 인식되지 않습니다.
⚠️ 주의사항
- __init__은 **int가 아니라 init**으로 작성해야 합니다.
- 속성 지정 시, 반드시 **self**를 사용하세요.
- 메서드 정의 시 **def area(self):**로 작성해야 합니다.
- 메서드 호출은 반드시 **객체명.메서드명()**으로 진행해야 합니다.
✅ 결론
- Python에서 클래스를 정의하고 객체를 생성하는 기본적인 방법을 학습했습니다.
- __init__ 메서드를 사용해 객체의 속성을 초기화하고, area 메서드를 사용해 사각형의 면적을 계산했습니다.
- self를 사용하여 객체 지향 프로그래밍의 핵심 개념을 익혔습니다.
클래스와 객체 개념은 Python 프로그래밍에서 매우 중요한 개념입니다! 🚀
앞으로도 이러한 방식으로 다양한 클래스를 직접 만들어 보며 연습해보세요! 😊
📚 Python 클래스 실습: Book 클래스 정의 및 사용
✅ 문제 설명
- 목표: Book 클래스를 정의하고, title(제목)과 author(저자)를 속성으로 설정합니다.
- 기능:
- __str__ 특수 메서드를 오버라이드하여, 객체가 문자열로 변환될 때 "제목: [title], 저자: [author]" 형식으로 출력되도록 합니다.
- 테스트: Book 객체를 하나 생성하고, print() 함수를 사용하여 해당 객체의 문자열 표현을 출력합니다.
✅ 문제 해결 코드
# 1. 클래스 정의
class Book:
# 2. 생성자 메서드 (__init__)로 title과 author 초기화
def __init__(self, title, author):
self.title = title # 인스턴스 변수: 제목
self.author = author # 인스턴스 변수: 저자
# 3. __str__ 메서드 오버라이드 - 객체를 문자열로 표현
def __str__(self):
return f"제목: {self.title}, 저자: {self.author}"
# 4. Book 객체 생성
book = Book("파이썬의 정석", "홍길동")
# 5. print() 함수로 객체의 문자열 표현 출력
print(book)
📋 출력 예시
제목: 파이썬의 정석, 저자: 홍길동
🔍 코드 프로세스 흐름
✅ 1. 클래스 정의
- class Book으로 Book 클래스를 정의합니다.
✅ 2. 생성자 메서드 __init__
- 객체가 생성될 때 자동으로 호출되어 속성을 초기화합니다.
- self.title = title: 입력받은 제목 값을 인스턴스 변수로 설정합니다.
- self.author = author: 입력받은 저자 값을 인스턴스 변수로 설정합니다.
✅ 3. __str__ 메서드 오버라이드
- 객체가 문자열로 출력될 때 호출되는 특수 메서드입니다.
- f"제목: {self.title}, 저자: {self.author}" 형식으로 출력되도록 작성합니다.
✅ 4. 객체 생성
- book = Book("파이썬의 정석", "홍길동")로 객체를 생성합니다.
- title은 "파이썬의 정석", author는 "홍길동"으로 설정됩니다.
✅ 5. 문자열 출력
- print(book)을 통해 __str__ 메서드가 자동으로 호출되어 문자열 형태로 출력됩니다.
🧩 __str__ 메서드의 중요성
- Python에서 객체를 print()로 출력하면 기본적으로 객체의 메모리 주소가 출력됩니다.
- __str__ 메서드를 오버라이드하면, 객체를 의미 있는 문자열로 표현할 수 있어 가독성이 향상됩니다.
- __str__ vs __repr__ 차이
- __str__: 사용자가 보기 쉬운 형태로 객체를 표현합니다.
- __repr__: 개발자가 객체를 재구성할 수 있도록 표현합니다.
⚠️ 주의사항
- **__str__는 반드시 return**을 사용하여 문자열을 반환해야 합니다.
- 문자열 포맷팅은 f-string을 사용하면 가독성이 좋아집니다.
- 객체 생성 시 매개변수 순서를 정확히 지켜야 합니다.
✅ 결론
- Python에서 객체의 문자열 표현을 제어하는 방법을 익혔습니다.
- __str__ 메서드 오버라이드를 통해 객체 출력 시 의미 있는 정보를 제공할 수 있게 되었습니다.
- 이러한 방식은 객체 지향 프로그래밍에서 필수적인 개념이므로, 반드시 숙지해두세요!
클래스를 이해하고 객체의 표현 방식을 제어하는 능력은 Python 개발자로서 중요한 스킬입니다! 🚀
💼 Python 클래스 실습: Employee 클래스 정의 및 사용
✅ 문제 설명
- 목표: Employee 클래스를 정의하고, 각 직원의 이름(name)과 급여(salary)를 속성으로 설정합니다.
- 기능:
- 클래스 변수 raise_amount를 설정하고, 기본값은 1.04로 지정합니다.
- apply_raise 메서드를 통해 급여에 raise_amount를 적용해 인상된 급여를 반영합니다.
- 테스트:
- Employee 객체 2개를 생성합니다.
- 한 객체의 raise_amount만 변경해 급여 인상률을 다르게 적용합니다.
- 두 객체의 인상된 급여를 출력합니다.
✅ 문제 해결 코드
# 1. 클래스 정의
class Employee:
# 클래스 변수 (모든 인스턴스가 공유하는 변수)
raise_amount = 1.04 # 기본 월급 인상률
# 생성자 메서드 (__init__)
def __init__(self, name, salary):
self.name = name # 인스턴스 변수: 이름
self.salary = salary # 인스턴스 변수: 급여
# 급여 인상 메서드
def apply_raise(self):
self.salary = int(self.salary * self.raise_amount) # 인상된 급여 반영
# 2. Employee 객체 생성
emp1 = Employee("홍길동", 50000)
emp2 = Employee("김철수", 60000)
# 3. emp2의 인상률만 변경
emp2.raise_amount = 1.10
# 4. 급여 인상 적용
emp1.apply_raise()
emp2.apply_raise()
# 5. 결과 출력
print(f"{emp1.name}의 인상된 급여: {emp1.salary}")
print(f"{emp2.name}의 인상된 급여: {emp2.salary}")
📋 출력 예시
홍길동의 인상된 급여: 52000
김철수의 인상된 급여: 66000
🔍 코드 프로세스 흐름
✅ 1. 클래스 정의
- class Employee로 Employee 클래스를 정의합니다.
- **클래스 변수 raise_amount**를 통해 기본 인상률을 1.04로 설정합니다.
✅ 2. 생성자 메서드 __init__
- self.name과 self.salary를 인스턴스 변수로 초기화합니다.
✅ 3. 급여 인상 메서드 apply_raise
- self.salary * self.raise_amount를 통해 인상된 급여를 계산하고 반영합니다.
- int()를 사용해 소수점을 제거하여 정수로 처리합니다.
✅ 4. 객체 생성 및 인상률 변경
- emp1은 기본 인상률 1.04를 사용합니다.
- emp2.raise_amount = 1.10을 통해 특정 객체의 인상률만 개별적으로 변경합니다.
✅ 5. 급여 인상 적용 및 출력
- 각 객체의 apply_raise() 메서드를 호출하여 급여를 인상합니다.
- 최종 인상된 급여를 print()로 출력합니다.
🧩 클래스 변수 vs 인스턴스 변수
- 클래스 변수: raise_amount는 클래스에 공유되는 변수로, 모든 인스턴스가 동일하게 참조합니다.
- 인스턴스 변수: name, salary는 각 인스턴스마다 고유하게 존재하는 변수입니다.
- 특정 인스턴스에서 클래스 변수를 변경하면 그 인스턴스에서만 개별적으로 적용됩니다.
⚠️ 주의사항
- 클래스 변수 변경 시, self.raise_amount로 설정해야만 해당 인스턴스에만 적용됩니다.
- 모든 인스턴스에 동일하게 적용하려면 Employee.raise_amount = 값으로 변경해야 합니다.
- 급여 계산 후 int()로 소수점을 제거해 깔끔하게 처리했습니다.
✅ 결론
- Python에서 클래스 변수와 인스턴스 변수의 차이를 정확히 이해할 수 있는 실습이었습니다.
- apply_raise 메서드를 통해 개별적으로 급여 인상률을 적용하는 방법을 익혔습니다.
- 객체 지향 프로그래밍에서 클래스 변수와 인스턴스 변수의 개념을 명확하게 이해하는 것이 중요합니다!
앞으로도 다양한 객체를 다루며 클래스를 더 깊게 이해해보세요! 🚀
💼 Python 클래스 실습: Employee 클래스 정의 및 사용
✅ 문제 설명
- 목표: Employee 클래스를 정의하고, 각 직원의 이름(name)과 급여(salary)를 속성으로 설정합니다.
- 기능:
- 클래스 변수 raise_amount를 설정하고, 기본값은 1.04로 지정합니다.
- apply_raise 메서드를 통해 급여에 raise_amount를 적용해 인상된 급여를 반영합니다.
- 테스트:
- Employee 객체 2개를 생성합니다.
- 한 객체의 raise_amount만 변경해 급여 인상률을 다르게 적용합니다.
- 두 객체의 인상된 급여를 출력합니다.
✅ 문제 해결 코드
# 1. 클래스 정의
class Employee:
# 클래스 변수 (모든 인스턴스가 공유하는 변수)
raise_amount = 1.04 # 기본 월급 인상률
# 생성자 메서드 (__init__)
def __init__(self, name, salary):
self.name = name # 인스턴스 변수: 이름
self.salary = salary # 인스턴스 변수: 급여
# 급여 인상 메서드
def apply_raise(self):
self.salary = int(self.salary * self.raise_amount) # 인상된 급여 반영
# 2. Employee 객체 생성
emp1 = Employee("홍길동", 50000)
emp2 = Employee("김철수", 60000)
# 3. emp2의 인상률만 변경
emp2.raise_amount = 1.10
# 4. 급여 인상 적용
emp1.apply_raise()
emp2.apply_raise()
# 5. 결과 출력
print(f"{emp1.name}의 인상된 급여: {emp1.salary}")
print(f"{emp2.name}의 인상된 급여: {emp2.salary}")
📋 출력 예시
홍길동의 인상된 급여: 52000
김철수의 인상된 급여: 66000
🔍 코드 프로세스 흐름
✅ 1. 클래스 정의
- class Employee로 Employee 클래스를 정의합니다.
- **클래스 변수 raise_amount**를 통해 기본 인상률을 1.04로 설정합니다.
✅ 2. 생성자 메서드 __init__
- self.name과 self.salary를 인스턴스 변수로 초기화합니다.
✅ 3. 급여 인상 메서드 apply_raise
- self.salary * self.raise_amount를 통해 인상된 급여를 계산하고 반영합니다.
- int()를 사용해 소수점을 제거하여 정수로 처리합니다.
✅ 4. 객체 생성 및 인상률 변경
- emp1은 기본 인상률 1.04를 사용합니다.
- emp2.raise_amount = 1.10을 통해 특정 객체의 인상률만 개별적으로 변경합니다.
✅ 5. 급여 인상 적용 및 출력
- 각 객체의 apply_raise() 메서드를 호출하여 급여를 인상합니다.
- 최종 인상된 급여를 print()로 출력합니다.
🧩 클래스 변수 vs 인스턴스 변수
- 클래스 변수: raise_amount는 클래스에 공유되는 변수로, 모든 인스턴스가 동일하게 참조합니다.
- 인스턴스 변수: name, salary는 각 인스턴스마다 고유하게 존재하는 변수입니다.
- 특정 인스턴스에서 클래스 변수를 변경하면 그 인스턴스에서만 개별적으로 적용됩니다.
⚠️ 주의사항
- 클래스 변수 변경 시, self.raise_amount로 설정해야만 해당 인스턴스에만 적용됩니다.
- 모든 인스턴스에 동일하게 적용하려면 Employee.raise_amount = 값으로 변경해야 합니다.
- 급여 계산 후 int()로 소수점을 제거해 깔끔하게 처리했습니다.
✅ 결론
- Python에서 클래스 변수와 인스턴스 변수의 차이를 정확히 이해할 수 있는 실습이었습니다.
- apply_raise 메서드를 통해 개별적으로 급여 인상률을 적용하는 방법을 익혔습니다.
- 객체 지향 프로그래밍에서 클래스 변수와 인스턴스 변수의 개념을 명확하게 이해하는 것이 중요합니다!
앞으로도 다양한 객체를 다루며 클래스를 더 깊게 이해해보세요! 🚀
📚 Python 클래스 실습: Account 클래스 정의 및 사용하기
✅ 문제 설명
Account 클래스를 작성하세요.
- Account 클래스는 **소유자(owner)**와 **잔액(balance)**을 속성으로 가지며, **잔액은 프라이빗 변수(__balance)**로 선언합니다.
- deposit와 withdraw 메소드를 통해 입금과 출금을 할 수 있습니다.
- 출금 시, 잔액이 부족할 경우 출금이 되지 않도록 처리합니다.
- Account 객체를 생성하고, 입금과 출금 작업을 시뮬레이션한 후 최종 잔액을 출력하세요.
🔄 코드 프로세스 흐름
- 클래스 정의
- __init__ 생성자를 사용하여 소유자와 프라이빗 잔액을 초기화합니다.
- deposit() 메서드로 입금을 처리합니다.
- withdraw() 메서드로 출금을 처리하며, 잔액이 부족한 경우 실패 메시지를 출력합니다.
- get_balance() 메서드로 현재 잔액을 반환합니다.
- 객체 생성 및 메서드 호출
- 홍길동이라는 소유자와 초기 잔액 10,000원으로 Account 객체를 생성합니다.
- deposit 메서드를 이용해 5,000원을 입금합니다.
- withdraw 메서드를 이용해 3,000원을 출금합니다.
- withdraw 메서드로 15,000원을 출금 시도 (잔액 부족으로 실패 예상).
- get_balance로 최종 잔액을 출력합니다.
🧑💻 코드 예시
# 1. Account 클래스 정의 class Account: def __init__(self, owner, balance): self.owner = owner # 인스턴스 변수: 소유자 self.__balance = balance # 프라이빗 변수: 잔액 # 입금 메서드 def deposit(self, amount): if amount > 0: self.__balance += amount print(f"💰 {amount}원이 입금되었습니다. 현재 잔액: {self.__balance}원") else: print("⚠️ 입금 금액은 0보다 커야 합니다.") # 출금 메서드 def withdraw(self, amount): if amount <= self.__balance: self.__balance -= amount print(f"💸 {amount}원이 출금되었습니다. 현재 잔액: {self.__balance}원") else: print("🚫 출금 실패: 잔액이 부족합니다.") # 잔액 조회 메서드 def get_balance(self): return self.__balance # 2. Account 객체 생성 account = Account("홍길동", 10000) # 3. 입금 및 출금 작업 account.deposit(5000) # 5,000원 입금 account.withdraw(3000) # 3,000원 출금 account.withdraw(15000) # 15,000원 출금 시도 (실패) # 4. 최종 잔액 출력 print(f"✅ 최종 잔액: {account.get_balance()}원")
✅ 출력 결과
💰 5000원이 입금되었습니다. 현재 잔액: 15000원 💸 3000원이 출금되었습니다. 현재 잔액: 12000원 🚫 출금 실패: 잔액이 부족합니다. ✅ 최종 잔액: 12000원
🔍 풀이 과정 쉽게 정리
- 프라이빗 변수 선언
- self.__balance를 사용해 외부에서 잔액을 직접 변경하지 못하도록 처리했습니다. 🔒
- 입금 처리 (deposit 메서드)
- 0보다 큰 금액만 입금 가능하도록 조건문을 추가해, 잘못된 입력을 방지했습니다.
- 출금 처리 (withdraw 메서드)
- 출금 금액이 잔액보다 많을 경우 출금이 되지 않고, 실패 메시지를 출력하도록 했습니다.
- 잔액 조회 (get_balance 메서드)
- 현재 잔액을 안전하게 확인할 수 있도록 get_balance() 메서드를 사용했습니다.
- 메서드 호출 시뮬레이션
- 입금과 출금 작업을 실행해 정상 작동 여부를 확인했습니다.
- 잔액보다 많은 금액 출금 시, 실패 메시지가 출력되어 예외 처리가 정상적으로 작동하는 것을 확인했습니다.
🚀 실전 활용 팁
- **프라이빗 변수(__balance)**를 사용하여 외부에서 직접 잔액을 변경하지 못하도록 안전성을 강화했습니다.
- 유효성 검사를 통해 잘못된 입력을 차단하고, 프로그램의 안정성을 높였습니다.
- 에러 메시지를 통해 사용자가 어떤 부분에서 잘못되었는지 쉽게 파악할 수 있도록 작성했습니다.
🎯 결론
- 캡슐화와 유효성 검사를 통해 프로그램의 안정성과 보안성을 확보했습니다.
- 실무에서도 입금/출금 시스템이나 포인트 관리 시스템에 유용하게 사용할 수 있는 패턴입니다.
- 이러한 예외 처리를 통해 안정적인 코드 작성을 할 수 있습니다! 🚀
이 포맷으로 앞으로도 문제를 꼼꼼하게 정리해드리겠습니다! 💯
🚗 Vehicle 클래스와 상속 이해하기
이본 포스팅에서는 Python에서 클래스 상속을 활용해 Vehicle 기본 클래스를 만들고, 이를 기본으로 Truck과 Car 하위 클래스를 구현해보게요. 상속을 통해 코드 재사용성과 확장성을 높이는 방법을 함께 알아보세요! 🚀
✅ 문제 요구사항
- Vehicle 기본 클래스
- 속성: make (제조사), model (모델명)
- 메소드: display_info() → "이 차량은 [make]에서 제조한 [model]입니다." 반환
- Truck 하위 클래스
- 상속: Vehicle
- 추가 속성: payload (적재량)
- Car 하위 클래스
- 상속: Vehicle
- 추가 속성: seats (좌석 수)
- 각 객체를 생성하고 display_info() 메소드로 정보를 출력.
- 각 객체의 추가 속성(payload, seats)도 출력.
⚙️ 코드 구현 및 설명
# ✅ Vehicle 기본 클래스 선언
class Vehicle:
def __init__(self, make, model):
self.make = make # 제조사
self.model = model # 모델명
def display_info(self):
return f"이 차량은 {self.make}에서 제조한 {self.model}입니다."
# ✅ Truck 하위 클래스 선언
class Truck(Vehicle):
def __init__(self, make, model, payload):
super().__init__(make, model) # 부모 클래스 속성 초기화
self.payload = payload # 적재량
# ✅ Car 하위 클래스 선언
class Car(Vehicle):
def __init__(self, make, model, seats):
super().__init__(make, model) # 부모 클래스 속성 초기화
self.seats = seats # 좌석 수
# 🚚 Truck 객체 생성
truck = Truck("현대", "에그시언트", 10000)
# 🚗 Car 객체 생성
car = Car("기아", "K5", 5)
# ✅ Truck 정보 출력
print(truck.display_info())
print(f"적재량: {truck.payload}kg")
# ✅ Car 정보 출력
print(car.display_info())
print(f"좌석 수: {car.seats}석")
📊 실행 결과
이 차량은 현대에서 제조한 에그시언트입니다.
적재량: 10000kg
이 차량은 기아에서 제조한 K5입니다.
좌석 수: 5석
✅ 프로세스 확률 정리
- Vehicle 클래스 정의
- make과 model을 생성자에서 초기화하고, 정보를 출력하는 display_info() 메소드를 정의합니다.
- Truck과 Car 하위 클래스 정의
- super()를 통해 부모 클래스 속성을 확인하고 초기화합니다.
- 각 클래스에서 고유 속성을 추가합니다.
- 객체 생성
- Truck과 Car 객체를 각각 생성하고 속성 값을 전달합니다.
- 정보 출력
- display_info()로 제조사와 몇명을 출력합니다.
- 각 클래스 고유의 속성(payload, seats)도 함껔 출력합니다.
🔥 해당 평가 필요 함
- super().__init__()을 통해 부모 클래스의 속성을 확인하고 함수를 호출
- 하위 클래스은 자신
'과제' 카테고리의 다른 글
Database- 데이터베이스 (문제풀이 2일차) (0) | 2025.03.19 |
---|---|
Database- 데이터베이스 (문제풀이 1일차) (0) | 2025.03.18 |
PYTHON - 변수 (문제풀이 1일차) (0) | 2025.03.17 |
PYTHON - 자료형과 연산자 (문제풀이 2일차) (0) | 2025.03.17 |
PYTHON - 시퀀스 자료형 (문제풀이 3일차) (0) | 2025.03.17 |