Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Решить в питоне

nikneym Ученик (46), на голосовании 1 год назад
Объявите в программе класс Cart (корзина), объекты которого создаются командой:

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
Голосование за лучший ответ
Robert312_980 Знаток (493) 1 год назад
У меня так вышло

 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)
nikneymУченик (46) 1 год назад
Не прошел код
Robert312_980 Знаток (493) Мария Луганская Луганская , Сейчас по другому попробую
nikneymУченик (46) 1 год назад
По ссылке не могу войти
Похожие вопросы