← маршрут 1–48 · личный кабинет
Занятие 26. Словари: набор игровых объектов
Перед началом
Что открыть: Открой рабочую версию проекта после занятия 25. Демонстрационный lesson-26.py используй как отдельный маленький пример.
Исходные данные: Два противника имеют одинаковые поля name, hp, damage.
Что нужно понять
Занятие 26 посвящено теме «Словари: набор игровых объектов». Здесь этот навык применяется не как отдельное упражнение, а как часть общей текстовой RPG. Вложенные словари позволяют хранить набор игровых объектов с одинаковой схемой. Один внешний ключ выбирает объект, внутренние ключи описывают его свойства.
Минимальный пример
enemies={
"wolf":{"name":"Волк","hp":5,"damage":2},
"guard":{"name":"Страж","hp":8,"damage":3},
}
print(enemies["wolf"])Скачать демонстрационный .py-файл
Практика
Создай словарь enemies минимум с двумя противниками, у каждого name, hp и damage. Выбери одного по ключу и выведи его данные.
Связь с проектом: После базового упражнения перенеси изученный приём в рабочую версию проекта и сохрани версию после занятия 26.
Критерий проверки
Оба объекта имеют одинаковый набор обязательных полей; выбранный ключ возвращает правильного противника.
Как проверить: Выбери каждого противника по ключу и выведи все три обязательных поля.
Что сдать
Сдай рабочую версию проекта после занятия 26 и короткий протокол проверки: входные данные → ожидалось → получилось.
Если нужна поддержка: Если задача не запускается целиком, выполни один шаг отдельно и объясни, что должно измениться до следующего шага.
Типичное затруднение
Не смешивай разные имена полей для одинаковых объектов. Единая схема упрощает дальнейшую обработку.
Домашняя часть
Добавь третьего противника по той же схеме.
После базы: Пройди по словарю через for и выведи имя и hp каждого объекта.
Если появилась ошибка
Traceback — сообщение Python об ошибке. Сначала прочитай его последнюю строку и найди номер строки своего файла. Повтори только тот маленький шаг, на котором возникла ошибка; после исправления снова запусти тот же проверочный случай. Если используешь ИИ, сохрани собственную попытку и попроси одну подсказку, а не готовое решение.