본문 바로가기
프로그램

[파이썬] 문제 : 클래스(Box) 선언 및 __init__(), __str__() 사용

by 오디세이99 2023. 12. 10.
728x90
반응형

class Box():                           # 만들 클래스 선언
    def __init__(self, l, h, d):       #  매직메소드 __init__ 선언. __init__()는 인스턴스 생성시 1번만 자동 실행 됨
        self.length = l                # 메소드의 인수인 l 값을 인스턴스 변수 self.length에 반영
        self.height = h                # 메소드의 인수인 h 값을 인스턴스 변수 self.height에 반영
        self.depth = d                 # 메소드의 인수인 d 값을 인스턴스 변수 self.depth에 반영
        
    def __str__(self):                  # 매직메소드 __str__() 선언. print(인스턴스) 할때 출력된 문자열을 선언
        return f"({self.length}, {self.height}, {self.depth})"
    
    def getLength(self):               # 메소드 선언
        return self.length
    
    def getHeight(self):
        return self.height
    
    def getDepth(self):
        return self.depth
    
b1 = Box(100, 100, 100)
print(b1)                                # 인스턴스의 __str__()메소드에 선언된 문자열 출력
print("상자의 부피는",b1.getHeight() * b1.getLength()*b1.getDepth())

728x90
반응형

댓글