Code: Select all
class PVector:
def __init__(self, x, y):
self.x = x
self.y = y
def add(self, V):
return PVector (self.x + V.x, self.y + V.y)
Когда я делаю print (PVector(1,5)), я получаю адрес памяти:
<__main__.PVector object at 0x10535f358>
А я хочу получить tuple (self.x, self.y).
Один вариант — добавить такой метод в класс:
Code: Select all
def __call__(self):
return (self.x, self.y)
Print (PVector(1,5)())
А можно ли сделать так, чтобы без скобок выдавался не адрес, а содержимое в формате tuple?
Например, если я делаю так:
x = (4,5)
print (x)
то я получаю содержимое, а не адрес. А как такое можно сделать для экземпляра класса (прошу прощения если я употребляю неправильные термины)?