# 다운 탑 class 버튼: def 누르다(self): pass class 파워버튼(버튼): def __init__(self): self.상태 = False def 누르다(self): if self.상태: self.상태 = False else: self.상태 = True class 선풍기버튼(파워버튼): def __init__(self, speed, m): super().__init__() self.speed=speed self.motor = m def 누르다(self): super().누르다() if self.상태: self.motor.회전하다(self.speed); class 모터: def 회전하다(self, s): print("%d 세기로 회전합니다" % s) class 선풍기: def __init__(self): self.motor = 모터() self.powerButton = 파워버튼() self.button1 = 선풍기버튼(1, self.motor) self.button2 = 선풍기버튼(2, self.motor) self.button3 = 선풍기버튼(3, self.motor) def 켜다(self): self.powerButton.누르다() return self.powerButton.상태 def 끄다(self): self.powerButton.누르다() return self.powerButton.상태 def 작동하다(self, n): if n == 1: self.button1.누르다() if n == 2: self.button2.누르다() if n == 3: self.button3.누르다() a=선풍기() if a.켜다(): a.작동하다(1)