0

Блендер итоговый тест к 8 модулю Python

Не получается решить до конца итоговый тест. Вот сам текст задачи: Вам дан класс Сок, который имеет свойства имя и объем. Вам необходимо завершить код, чтобы сложить два объекта Сок, которые в результате дадут новый объект Сок, объединяющий в себе свойства «имя» и «объем» тех двух, из которых он получен. Например, если совместить апельсиновый сок объемом 1.0 и яблочный сок объемом 2.5, то в результате вы получите: имя: Orange&Apple объем: 3.5 Вот мой код: class Juice: def __init__(self, name, capacity): self.name = name self.capacity = capacity def __str__(self): return (self.name + ' ('+str(self.capacity)+'L)') def __add__(self, other): return (self.name + other.name, self.capacity + other.capacity) a = Juice('Orange', 1.5) b = Juice('Apple', 2.0) result = a + b print(result) Вывод: ('OrangeApple', 3.5) Ожидаемый вывод: Orange&Apple (3.5L) Пробовал добавлять метод __and__ но не получил нужного результата, подскажите где ошибка. Спасибо!

25th Mar 2021, 8:08 PM
Павел Ильминский
Павел Ильминский - avatar
4 Antworten
+ 7
def __add__(self, other ): self.name = self.name+"&"+other.name self.capacity += other.capacity return self
14th May 2021, 9:19 AM
Volodymyr Shylov
Volodymyr Shylov - avatar
0
Try this : def __add__(self, other): return (self.name + '&'+other.name +' (' +str(self.capacity + other.capacity)+'L)')
25th Mar 2021, 8:42 PM
Jayakrishna 🇮🇳
0
Thank you! Its work)
25th Mar 2021, 8:56 PM
Павел Ильминский
Павел Ильминский - avatar
0
You're welcome...
25th Mar 2021, 8:58 PM
Jayakrishna 🇮🇳