class Vector: def __init__(self, x=0, y=0): self.x = x self.y = y pass def __repr__(self): return '({}; {})'.format(self.x, self.y) def __add__(self, other): return Vector(self.x + other.x, self.y + other.y) def __sub__(self, other): return Vector(self.x - other.x, self.y - other.y) def __mul__(self, other): if isinstance(other, int) or isinstance(other, float): return Vector(other * self.x, other * self.y) elif isinstance(other, Vector): return self.x * other.x + self.y * other.y def mult(self, other): return Vector(other * self.x, other * self.y) def __abs__(self): return hypot(self.x, self.y)
здравствуйте! пробую создать класс вектор, и столкнулся с такой проблемой как умножение вектора на число. я понимаю почему эта проблема присутствует. несоответствие классов. но вопрос. можно ли как-то эту проблему решить именно в __mul__? или просто довольствоваться методами класса?