class point():
def __init__(self,x=0,y=0):
self.x=x
self.y=y
def __add__(self,other):
x = self.x + other.x
y = self.y + other.y
return point(x,y)
p1=point(3,6)
p2=point(-1,4)
print p1
print p2
d=p1+p2
print 'the summation is',d
Ожидаемый результат:Python: оператор перегружает неожиданный вывод?
3,6
-1,4
2,10
На самом деле выход: (не очень, но делает точка)
<__main__.point instance at 0xdeadbeef1234>
<__main__.point instance at 0xdeadbeef1445>
<__main__.point instance at 0xdeadbeef1233>
Исправьте код. Я не знаю, где должны идти эти последние строки. –
@MorganThrapp - Разве они не будут идти на том же уровне, что и класс? –
Что такое неожиданный результат? Какой результат вы ожидаете? – BrenBarn