ООП · 11 из 14
Велосипед занят
Сейчас попытка взять занятый велосипед возвращает False, и вызывающий волен это False не заметить. В кассовой программе это уже обошлось в двух человек, уехавших на одном велосипеде.
Что сделать
Сделайте так, чтобы попытку взять занятый велосипед нельзя было не заметить.
Что приходит
velosipedy— список велосипедов; у каждого поляnomerиv_prokate
Что должен уметь
Исключение VelosipedZanyat; vydat(nomer) выдаёт и отдаёт велосипед, занятый — VelosipedZanyat("Велосипед V-12 уже в прокате"), неизвестный номер — KeyError.
Допишите класс Prokat в редакторе справа.
Проверка создаёт его объекты и зовёт методы — то, что напечатано,
на проверку не влияет.
p = Prokat([Velosiped('A-1', 50)])
vzyali = p.vydat('A-1')
(vzyali.nomer, vzyali.v_prokate)
('A-1', True)
Заведите исключение VelosipedZanyat, наследник Exception.
Класс Prokat принимает список велосипедов (поля nomer, v_prokate). Метод vydat(nomer):
- помечает велосипед выданным и возвращает его;
- если велосипед уже в прокате, поднимает
VelosipedZanyatс текстомВелосипед V-12 уже в прокате; - если номера в прокате нет вовсе, поднимает
KeyErrorс номером.
Обсуждение
Вопросов пока нет.
Войдите, чтобы спросить.