[파이썬] 인스턴스 변수와 메서드

파이썬은 객체 지향 프로그래밍 언어이며 클래스를 사용하여 객체를 생성하고 관리할 수 있습니다. 객체는 속성과 동작을 가진 개체로, 이를 정의하기 위해 인스턴스 변수와 메서드를 사용합니다. 이번 글에서는 파이썬에서 인스턴스 변수와 메서드를 사용하는 방법에 대해 알아보겠습니다.

인스턴스 변수

인스턴스 변수는 클래스의 인스턴스(객체)에 속하는 변수로, 객체의 고유한 특성을 나타냅니다. 인스턴스 변수를 클래스 내부에서 선언하고 초기화할 수 있으며, 객체가 생성될 때마다 각각의 인스턴스 변수는 객체의 상태를 유지합니다.

class Car:
    def __init__(self, brand, model, color):
        self.brand = brand
        self.model = model
        self.color = color

car1 = Car("Hyundai", "Sonata", "Blue")
car2 = Car("Kia", "Sorento", "White")

print(car1.brand)  # "Hyundai"
print(car2.color)  # "White"

위의 예제에서 brand, model, color는 인스턴스 변수입니다. __init__ 메서드는 객체 생성 시 호출되며, 인스턴스 변수를 초기화하는 역할을 합니다. car1car2Car 클래스의 두 개의 인스턴스로, 각각의 인스턴스 변수는 해당 인스턴스의 속성을 나타냅니다.

인스턴스 메서드

인스턴스 메서드는 객체에서 호출되는 함수로, 객체의 동작을 정의합니다. 인스턴스 메서드는 클래스 내부에서 선언되며, self 파라미터를 사용하여 현재 객체에 접근할 수 있습니다.

class Circle:
    def __init__(self, radius):
        self.radius = radius

    def calculate_area(self):
        return 3.14 * self.radius ** 2

circle1 = Circle(5)
circle2 = Circle(8)

print(circle1.calculate_area())  # 78.5
print(circle2.calculate_area())  # 200.96

위의 예제에서 calculate_area는 인스턴스 메서드입니다. 각각의 Circle 객체는 calculate_area 메서드를 호출하여 원의 넓이를 계산합니다. self 파라미터를 사용하여 현재 객체의 속성에 접근하고 계산을 수행합니다.

정리

인스턴스 변수와 메서드는 파이썬의 객체 지향 프로그래밍의 핵심 요소입니다. 인스턴스 변수는 객체의 고유한 특성을 표현하고, 인스턴스 메서드는 객체의 동작을 정의합니다. 이를 사용하여 객체를 생성하고 관리할 수 있으며, 코드의 가독성과 재사용성을 향상시킬 수 있습니다.