Python中关于属性丢失的错误(希望格式化正确)



我试图在我的对象上定义一个名为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]

,然后写两个访问器方法(getXgetY),返回向量

的x和y分量

我的挣扎点是不知道如何使用/在哪里放置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]

相关内容

最新更新