День добрый! Я написал код для работы с дробями:
spoilerclass Fraction:
def __init__(self, a, b):
self.a = a
self.b = b
def __str__(self):
return '{}/{}'.format(self.a, self.b)
def __add__(self, other):
return Fraction(self.a + other.a, self.b + other.b)
def __sub__(self, other):
return Fraction(self.a - other.a, self.b - other.b)
def __mul__(self, other):
return Fraction(self.a * other.a, self.b * other.b)
Вызовы типа Fraction(10, 1) + Fraction(2, 20) работают отлично. Но задание ещё звучит так:
Предполагается, что операция сложения/вычитания/умножения может проводиться как только между дробями, так и между дробью и целым числом.
То есть должен работать вызов Fraction(1, 2) + 3. А у меня выкидывает
AttributeError: 'int' object has no attribute 'a', потому что не хватает нужного куска кода. А я не понимаю, что там должно быть записано. Помогите пожалуйста.