파이썬 가이드 09 클래스와 객체
클래스와 객체
Python에서 **클래스(Class)**는 객체(Object)를 생성하기 위한 설계도 또는 틀입니다. 클래스는 특정 종류의 객체가 가질 속성(데이터)과 행동(함수 또는 메서드)을 정의합니다.
**객체(Object)**는 클래스에 의해 생성된 실제 인스턴스입니다. 객체는 클래스에서 정의된 속성과 행동을 가집니다.
간단한 예시:
<!-- -->
# 클래스 정의
class Dog:
# 클래스 속성 (모든 Dog 객체가 공유)
species = "Canis familiaris"
# 초기화 메서드 (객체가 생성될 때 호출)
def __init__(self, name, age):
self.name = name # 인스턴스 속성
self.age = age # 인스턴스 속성
# 인스턴스 메서드 (객체의 행동)
def bark(self):
return f"{self.name}가 멍멍 짖습니다!"
def description(self):
return f"{self.name}는 {self.age}살입니다."
<!-- -->
# 객체 생성 (클래스의 인스턴스)
my_dog = Dog("바둑이", 3)
your_dog = Dog("초코", 5)
<!-- -->
# 객체의 속성 접근
print(f"내 강아지 이름: {my_dog.name}")
print(f"내 강아지 나이: {my_dog.age}")
print(f"내 강아지 종: {my_dog.species}")
print(f"네 강아지 이름: {your_dog.name}")
print(f"네 강아지 나이: {your_dog.age}")
<!-- -->
# 객체의 메서드 호출
print(my_dog.bark())
print(your_dog.description())
이 예시에서 Dog는 클래스이고, my_dog와 your_dog는 Dog 클래스의 객체입니다.