← маршрут 1–48 · личный кабинет
Занятие 24. Инвентарь: использование предметов
Перед началом
Что открыть: Открой рабочую версию проекта после занятия 23. Демонстрационный lesson-24.py используй как отдельный маленький пример.
Исходные данные: Каждый из первых четырёх тестов начинай с нового состояния. Пятый продолжает первый тест без восстановления inventory.
Что нужно понять
Занятие 24 посвящено теме «Инвентарь: использование предметов». Здесь этот навык применяется не как отдельное упражнение, а как часть общей текстовой RPG. Использование предмета связывает список инвентаря и игровое состояние. Зелье лечит только если оно есть и hp меньше максимума. После успешного использования зелье удаляется.
Минимальный пример
max_hp=10
hp=8
inventory=["зелье"]
if "зелье" in inventory and hp<max_hp:
hp=min(max_hp,hp+5)
inventory.remove("зелье")
print("HP:",hp,"Инвентарь:",inventory)Скачать демонстрационный .py-файл
Практика
Пусть max_hp=10, зелье лечит на 5. Если 'зелье' есть в inventory и hp<10, увеличь hp до min(max_hp,hp+5) и удали одно зелье. При полном здоровье зелье остаётся.
Связь с проектом: После базового упражнения перенеси изученный приём в рабочую версию проекта и сохрани версию после занятия 24.
Критерий проверки
Проверь пять случаев по таблице. Все обязательные исходы должны совпасть с ожидаемым результатом.
Как проверить: Проверь пять случаев по таблице. Первые четыре запускай с новым состоянием. Пятый продолжает первый.
| Что произошло | Состояние после действия |
|---|---|
| HP=3; есть зелье | HP=8; зелья нет |
| HP=8; есть зелье | HP=10; зелья нет |
| HP=8; зелья нет | HP=8; инвентарь не меняется |
| HP=10; есть зелье | HP=10; зелье остаётся |
| После первого теста использовать снова | HP остаётся 8; зелья нет |
Что сдать
Сдай рабочую версию проекта после занятия 24 и короткий протокол проверки: входные данные → ожидалось → получилось.
Если нужна поддержка: Если задача не запускается целиком, выполни один шаг отдельно и объясни, что должно измениться до следующего шага.
Типичное затруднение
Не удаляй предмет до проверки и не применяй эффект дважды. Выводи инвентарь после действия.
Домашняя часть
Добавь второй расходуемый предмет с другим эффектом.
После базы: Проверь использование при почти максимальном hp и объясни работу min.
Если появилась ошибка
Traceback — сообщение Python об ошибке. Сначала прочитай его последнюю строку и найди номер строки своего файла. Повтори только тот маленький шаг, на котором возникла ошибка; после исправления снова запусти тот же проверочный случай. Если используешь ИИ, сохрани собственную попытку и попроси одну подсказку, а не готовое решение.