인스턴스 변수

> 일반적으로 인스턴스 변수는 생성자 안에 정의를 함. 

 

> 예시

class Car:

    def __init__(self, brand, price):
        self.brand = brand
        self.price = price

    def get_brand(self):
        return self.brand

    def get_price(self):
        return self.price
new_car = Car("KIA", 50_000_000)
old_car = Car("BMW", 30_000_000)

print(f"My old car was {old_car.get_brand()} and the price was {old_car.get_price():,} won.")
print(f"My new car was {new_car.get_brand()} and the price was {new_car.get_price():,} won.")

 

 

> 인스턴스 변수는 인스턴스 생성 후에도 속성 추가 가능 (해당 인스턴스에만 생성)

 

color라는 속성이 하나 추가된 모습
color라는 속성이 있는 해당 인스턴스에만 생성되는 모습

 

 

 

 

 

정적 변수

> 클래스 내부에 공간이 할당되어 여러 인스턴스들이 하나의 자료를 공유 가능

> 정적 변수는 클래스에 정의

 >> 사용법: 클래스이름.변수 or 인스턴스이름.변수

 >> 클래스 속성은 여러 객체가 공유한다는 것을 주의 

 

> 동일한 변수일 경우 이름 찾는 순서: 인스턴스 변수 > 클래스 변수 

 >> 위와 같은 예시일 경우 인스턴스 변수 count는 설정이 없으므로 클래스 변수 count값 사용

'프로그래밍 > Python' 카테고리의 다른 글

Python - Closure 함수  (0) 2023.12.15
Python - 클래스 속성과 메서드 사용  (2) 2023.11.25
Python - 클래스 생성자  (2) 2023.11.25
Python - 클래스  (1) 2023.11.25
Python - 텍스트 파일 출력(쓰기)  (0) 2023.10.21

+ Recent posts