2013-08-06 3 views
-3

클래스의 다른 메서드로 만든 메서드의 메서드를 호출하고 싶습니다. 어떻게하면 좋을까요?클래스로 만든 객체로 작업 하시겠습니까?

예 : 내가 빼기에 의해 반환되는 차이로 두 번째 숫자를 추가하는 방법

class call_me(object): 

    def __init__(self, x, y): 
     self.x = 5 
     self.y = 10 

    def subtract(self): 
     difference = self.y - self.x 
     return difference 

    def add(self.subtract,second_number): 
     # code to add the two numbers, x and y... 

?

원래 질문의 표현이 형편 없었던 것에 대해 사과드립니다. 내가 원했던 것은 클래스의 다른 메소드에 의해 생성 된 클래스에 대해 메소드를 호출하는 방법을 이해하는 것이었지만 예제에서는 x 및 y 속성을 사용했습니다. 편집 된 형식의 질문은 내가 이해하고 싶은 것을 더 잘 반영합니다.

+0

정답을달라고 질문을 수정하지 마십시오. 답을 이해할 수 있도록 잘못 두십시오. – Stephan

+2

질문의 의미가 크게 바뀌었기 때문에받은 답변을 다른 사람들이 이해하기가 훨씬 어려워졌습니다. 새로운 질문이 있으시면 * 새로운 질문을 올리십시오 *. –

+0

"편집 된 형식의 질문은 내가 이해하고자하는 것을 더 잘 반영합니다." 그러나 당신이 원래 묻는 질문이 아닙니다. * 사람들이 낭비에 대답하려고 노력했습니다. 반복 : ** 새로운 질문이있는 경우 새로운 질문을 게시하십시오. ** –

답변

2

당신은 그들을 self에 속성함으로써, 인스턴스에 xy을 저장해야합니다

class call_me(object): 
    def __init__(self, x, y): 
     self.x = x 
     self.y = y 

    def add(self): 
     return self.x + self.y 

당신은 정말 생각 파이썬 튜토리얼의 Classes chapter을 검토합니다.

+0

'x'와'y' 인자를'__init__'으로 제거하고 싶을 수도 있습니다. 어떤 사람들은 당신이 동적으로 속성이나 뭔가를 명명하고 있다고 생각할 수도 있습니다. – roippi

+0

@roippi : 대신 함수 매개 변수를 사용했습니다. –

+0

물론, 그것도 작동합니다. – roippi

관련 문제