У меня так вышло
class Table:
def __init__(self, name, price):
self.name = name
self.price = price
class TV:
def __init__(self, name, price):
self.name = name
self.price = price
class Notebook:
def __init__(self, name, price):
self.name = name
self.price = price
class Cup:
def __init__(self, name, price):
self.name = name
self.price = price
class Cart:
def __init__(self):
self.goods = []
def add(self, gd):
self.goods.append(gd)
def remove(self, indx):
self.goods.pop(indx)
def get_list(self):
lst = []
for item in self.goods:
lst.append(f"{item.name}: {item.price}")
return lst
cart = Cart()
tv1 = TV("LG TV", 500)
tv2 = TV("Samsung TV", 600)
table = Table("Glass table", 200)
notebook1 = Notebook("Lenovo laptop", 1000)
notebook2 = Notebook("Dell laptop", 900)
cup = Cup("Ceramic mug", 10)
cart.add(tv1)
cart.add(tv2)
cart.add(table)
cart.add(notebook1)
cart.add(notebook2)
cart.add(cup)
goods_list = cart.get_list()
print(goods_list)
cart = Cart()
Каждый объект класса Cart должен иметь локальное свойство goods - список объектов для покупки (объекты классов Table, TV, Notebook и Cup). Изначально этот список должен быть пустым.
В классе Cart объявить методы:
add(self, gd) - добавление в корзину товара, представленного объектом gd;
remove(self, indx) - удаление из корзины товара по индексу indx;
get_list(self) - получение из корзины товаров в виде списка из строк:
['<наименовние_1>: <цена_1>',
'<наименовние_2>: <цена_2>',
...
'<наименовние_N>: <цена_N>']
Объявите в программе следующие классы для описания товаров:
Table - столы;
TV - телевизоры;
Notebook - ноутбуки;
Cup - кружки.
Объекты этих классов должны создаваться командой:
gd = ИмяКласса(name, price)
Каждый объект классов товаров должен содержать локальные свойства:
name - наименование;
price - цена.
Создайте в программе объект cart класса Cart. Добавьте в него два телевизора (TV), один стол (Table), два ноутбука (Notebook) и одну кружку (Cup). Названия и цены придумайте сами.
P.S. Отображать на экране ничего не нужно, только создать объекты по указанным требованиям.
Для примера:
Тест
s = cart.goods
cups = 0
tvs = 0
tbls = 0
nb = 0
for item in s:
if isinstance(item, TV):
tvs += 1
if isinstance(item, Table):
tbls += 1
if isinstance(item, Notebook):
nb += 1
if isinstance(item, Cup):
cups += 1
print(tvs, tbls, nb, cups)
Результат
2 1 2 1