В одном из моих упражнений написано, что нужно написать add метод для Point, который работает либо с объектом Point, либо с кортежем:
- Если вторым операндом является точка, метод должен вернуть новую точку, координата х которой является суммой координат х операндов, а также для координат у.
- Если второй операнд является кортежем, метод должен добавить первый элемент кортежа к координате x, а второй элемент к координате y и вернуть новую точку с результатом.
Это то, как далеко я прошел, и я не уверен, что кортежная часть моего кода является точной. Может кто-нибудь пролить свет на то, как бы я назвал эту программу для кортежа. Я думаю, что я прибил первую часть.
Вот мой код:
Class Point():
def__add__(self,other):
if isinstance(other,Point):
return self.add_point(other)
else:
return self.print_point(other)
def add_point(self,other):
totalx = self.x + other.x
totaly = self.y + other.y
total = ('%d, %d') % (totalx, totaly)
return total
def print_point(self):
print ('%d, %d) % (self.x, self.y)
blank = Point()
blank.x = 3
blank.y = 5
blank1 = Point()
blank1.x = 5
blank1.y = 6
Это то, что я построил до сих пор, и я не уверен, как на самом деле запустить это с частью кортежа. Я знаю, что если blank + blank1
выполнит часть if, то вызовет функцию add_point
, но как мне инициировать кортеж? Я не уверен, правильно ли я написал это ... пожалуйста, помогите.