2012-12-12 131 views
-1

我是一名新的Python学生,我真的很难与课程。所以我必须创建一个名为Positions的类,并带有构造函数,选择器等等。 构造函数应该接收2个整数,并返回由2个整数构成的位置,所以如果我收到数字2,3,它将返回位置(2,3)。 它是我在网上阅读后第一次上课。Python类 - 初学者

这是怎么回事?

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

似乎一切都很好。您可能想要做的唯一事情就是在实例变量前加下划线。这是python中的一个约定,表明这些变量是私有的,稍后我会详细介绍这些变量。

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. 希望这会有所帮助。