본문 바로가기

Python 파이썬

클래스(Class)를 응용해 기능을 구현해보자

728x90

TV의 기능을 구현하는 클래스를 만들어보자.

 

추상화

TV는 이런 기능을 할 것이다!

전원을 끄고 켜고, 화면을 출력하고, 볼륨조절을 하고, 채널도 바꿀 수 있다.

 

이제 추상화를 했으니 클래스를 만들어 보자.

class Tvclass:
   
    def __init__(self):
        self.power = False
   
    def tv_brand(self, brand):          # tv 브랜드
        self.brand = brand
       
    def print_brand(self):              # tv 브랜드 출력
        print(f"========================\n{self.brand}TV")
       
    def tv_powerOnOff(self):            # 전원
        if self.power:
            self.power = False
            print("전원꺼짐\n========================")
        else:
            self.power = True
            print("전원켜짐\n========================")

    def broadinfo(self, ch=0, vol=0):   # 채널,볼륨 상태
        self.ch = ch
        self.vol = vol
        self.prt()
       
    def ch_up(self):                    # 채널 증가
        self.ch += 1
        self.prt()
       
    def vol_up(self):                   # 볼륨 증가
        self.vol += 1
        self.prt()
       
    def prt(self):                      # 출력을 위한 함수
        print(f"┌─────────────────────┐")
        print(f"│ch:{'%0.2d' % self.ch}          vol:{'%0.2d' % self.vol}│")
        print(f"│                     │")
        print(f"│                     │")
        print(f"│                     │")
        print(f"│       방송중        │")
        print(f"└─────────────────────┘")
        print(f"========================")
   



tv1 = Tvclass()    
tv1.tv_brand("삼성")      
tv1.print_brand()      
tv1.tv_powerOnOff()

tv2 = Tvclass()
tv2.tv_brand("엘지")
tv2.print_brand()
tv2.tv_powerOnOff()

tv1.print_brand()
tv1.broadinfo()

tv2.print_brand()
tv2.broadinfo()
tv2.print_brand()
tv2.tv_powerOnOff()

tv1.print_brand()
tv1.ch_up()

tv1.print_brand()
tv1.vol_up()

 

 

티비를 켜고 화면을 출력하는 기능을 구현 했다!

출력물들을 통해 계속해서 확인 할 수 있으니 확인 해보시길 바란다!

볼륨을 증가하고 채널을 증가하는 기능만 있는데..

감소하는 기능을 구현해 보면서 클레스를 이해해 보자!

(저는 구현 했습니다...!)

 

클레스는 그냥 이렇게 사용 하는 것! 

어렵지 않다..!!? ㅎㅎ

728x90