class Order(list):
def __init__(self, discount, total_price, date):
self.discount = discount
self._total_price = total_price
self.date = date
@property
def discount(self):
return self._discount
@discount.setter
def discount(self, value):
low, high = 0, 99
if not low <= value <= high:
raise ValueError("should be in [{}:{}], "
"but passed {}".format(low, high, value))
self._discount = value
@property
def total_price(self):
return self._total_price - self._total_price * self._discount
class Item():
def __init__(self, id, name, description, price):
self.id = id
self.name = name
self.description = description
self.price = price
class DownloadableItem(Item):
def __init__(self, filename, downloads_count):
self.filename = filename
self.downloads_count = downloads_count
Мне необходимо в классе Order определить метод __str__, который выводит содержимое заказа в формате: Имя
товара - Количество товара - Стоимость. Использовать groupby() из модуля itertools. Подскажите как это сделать?