class Point(object):
''' A point on a grid at location x, y '''
def __init__(self, x, y):
self.X=x
self.Y=y
def __str__(self):
return "X=" + str(self.X), "Y=" + str(self.Y)
def __add__(self, other):
if not isinstance(other, Point):
raise TypeError("must be of type point")
x= self.X+ other.X
y= self.Y+ other.Y
return Point(x, y)
p1= Point(5, 8)
print p1 + [10, 12]
當試圖在RHS即打印P1 +添加列表或元組[10,12],我越來越AttributeError的:int對象有沒有屬性
attributeError: int object has no attribute
這又如何解決?
我得到TypeError(「必須是類型點」)。因爲你要添加一個點以外的類型,所以要點。這正是你告訴你的代碼要做的事情,這有什麼問題? –
你不加分。 '[10,12]'顯然不等於'點(10,12)'。您正在添加a)列表,b)指向列表。您的代碼現在不支持這兩種操作。第一個可能會實施(但實際上不應該),第二個可能不會。 –