Python 파이썬
클래스(Class)를 응용해 기능을 구현해보자
강동믓재이
2023. 10. 23. 10:58
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