2016-11-18 3 views
0

기본적으로다른 클래스에서 사용하고있는 클래스의 메소드를 사용하려면 어떻게해야합니까?

class Key: 

    def __init__(self, pressed): 
     '''(Key, bool) -> NoneType 
     ''' 
     self._pressed = pressed 

    def change_press_state(self): 
     self._pressed = not self._pressed 

class KeyBoard: 

    def __init__(self, how_many): 
     '''(KeyBoard, int) -> NoneType 
     Makes a Keyboard of 'how_many' keys. 
     ''' 

     self._keys = [] 
     for i in range (0, how_many): 
      self._keys.append(KeyBoard(False)) 

    def switch_status_of_key(self, index_of_key): 
     '''(KeyBoard) -> NoneType 
     Presses key if isn't and stops pressing key if it is. 
     ''' 

가 어떻게 사용자가 switch_status_of_key으로 전환하고자하는 특정 키에 change_press_state 부를 것 같은 뭔가? 나는

self._keys[key] = self._keys[key].flip() 

하지만 분명히 내가 오류를 받고 있어요 때문이 아니라 같은 것을 생각했다.

답변

0
self._keys.append(KeyBoard(False)) 

은 다음과 같아야합니다

self._keys.append(Key(False)) 

def switch_status_of_key(self, index_of_key): 
     '''(KeyBoard) -> NoneType 
     Presses key if isn't and stops pressing key if it is. 
     ''' 
     self._keys[index_of_key].change_press_state() 
+0

아 좋아! 캐치에 대한 평등함과 감사함은 그 실수로 신속하게 임의적으로 만들었습니다. – Krio

관련 문제