2012-12-12 3 views
-1

저는 새로운 파이썬 학생이고 수업을하는 데 어려움을 겪고 있습니다. 그래서 저는 생성자, 선택자 등으로 Positions라는 클래스를 만들어야합니다. 생성자는 2 개의 int를 받아서 2 개의 int에 의해 만들어진 위치를 반환하기 때문에, 2,3을 수신하면 위치 (2,3)를 반환합니다. 처음으로 온라인으로 수업을 듣고 있습니다.Python Classes - Beginner

무엇이 문제입니까?

class Position:  
    def __init__(self,column,line): 
     self.c = column 
     self.l = line 

    def position(self): 
     return (self.c,self.l) 

그리고 다른 하나는 나에게 위치를 알려주고 나는 단지 선만 반환해야합니다. 그래서 그들은 나를 (2,3)을 얻었다 경우 3.

def position_line(self): 
    return self.l 

나에게 약간의 팁을 제공하시기 바랍니다 반환해야합니다 :

+3

그러면 문제는 무엇입니까? 이것을 시도 했습니까? 어떤 오류가 있었습니까? 무엇을 기대 했습니까? –

+0

테스트를 마친 후에 실행 오류가 반환됩니다. 거기에 무엇이 잘못되었는지 궁금합니다. – user1783702

+2

@ user1783702 : 테스트는 무엇입니까? – Blender

답변

1

모든 것이 잘 보인다. 인스턴스 변수 앞에 언더 스코어를 붙이면됩니다. 이것은 파이썬에서 이러한 변수가 비공개임을 보여주기위한 컨벤션입니다. 나중에 더 자세히 설명하겠습니다.

class Position:  
    def __init__(self,column,line): 
     self._c = column 
     self._l = line 

    def position(self): 
     return (self._c,self._l) 

이것은 코드를 읽는 사람들에게 이러한 변수가 비공개이며 클래스 외부에서 액세스하면 안된다는 것을 보여줍니다.

0

코드에 문제가 없습니다. 이처럼 다만 수 :

p = Position(2, 3) 
    p.position_line() 

그리고 이것은이 도움이 될 것입니다 3. 희망을 인쇄합니다.