我试图在我的对象上定义一个名为getX的方法,因为它是一个问题的3部分中的第2部分(这是一个更长的问题的一部分,因为我正在做一个独立的在线课程,所以没有帮助)
这是我的类的样子
class V2:
def __init__(self, a, b):
self.a = a
self.b = b
def __str__(self):
return 'V2[%s,%s]' % (self.a, self.b)
def FindThis(self, a, b):
self.getX = self.a
self.getY = self.b
然后输入
v = V2(1,2)
v.getX()
当我创建该类的实例并调用.getX()时,我得到以下错误
Traceback (most recent call last): File "<pyshell#2>", line 1, in <module>
v.getX() AttributeError: V2 instance has no attribute 'getX'
注意:这个程序的目标是用init和str方法定义类的基本部分,以便如果您这样做
print V2(1.1,2.2)
它打印
V2[1.1,2.2]
,然后写两个访问器方法(getX
和getY
),返回向量
我的挣扎点是不知道如何使用/在哪里放置getX和getY在我的程序中来交付问题要求我做的事情
注意:我以前贴过这个问题,但格式很糟糕,没有说清楚我需要什么帮助。
你需要对你的代码做一些调整:
class V2:
def __init__(self, a, b):
self.x = a
self.y = b
def __str__(self):
return 'V2[%s,%s]' % (self.x, self.y)
def getX(self):
return self.x
def getY(self):
return self.y
v = V2(1,2)
>>> print v.getX()
1
>>> print v
V2[1,2]