← маршрут 1–48 · личный кабинет
Занятие 27. Практика: система локаций — карта
Перед началом
Что открыть: Открой рабочую версию проекта после занятия 26. Демонстрационный lesson-27.py используй как отдельный маленький пример.
Исходные данные: Лагерь: лес. Лес: лагерь, башня, пещера. Башня: лес. Пещера: лес.
Что нужно понять
Занятие 27 посвящено теме «Практика: система локаций — карта». Здесь этот навык применяется не как отдельное упражнение, а как часть общей текстовой RPG. Карту локаций удобно хранить в словаре: ключ — текущая локация, значение — список мест, куда разрешён переход. На этом занятии функции ещё не нужны: цель — научиться читать структуру карты и проверять названия.
Минимальный пример
locations={"лагерь":["лес"],"лес":["лагерь","башня","пещера"],"башня":["лес"],"пещера":["лес"]}
for place in locations:
print(place,"->",locations[place])Скачать демонстрационный .py-файл
Практика
Создай карту из четырёх локаций: лагерь↔лес, лес↔башня, лес↔пещера. Выведи доступные переходы из каждой локации.
Связь с проектом: После базового упражнения перенеси изученный приём в рабочую версию проекта и сохрани версию после занятия 27.
Критерий проверки
Все названия переходов существуют в карте. Для базовой карты переходы двусторонние: если A ведёт в B, B содержит A.
Как проверить: Проверь четыре локации и отдельно сверяй обратные связи.
Что сдать
Сдай рабочую версию проекта после занятия 27 и короткий протокол проверки: входные данные → ожидалось → получилось.
Если нужна поддержка: Если задача не запускается целиком, выполни один шаг отдельно и объясни, что должно измениться до следующего шага.
Типичное затруднение
Опечатка в названии создаёт переход в никуда. Сверяй ключи и значения карты по схеме на бумаге.
Домашняя часть
Добавь новую локацию и два связанных с ней перехода, затем сверяй словарь со схемой.
После базы: Отметь, какие переходы должны быть двусторонними, но не вводи функции до занятия 29.
Если появилась ошибка
Traceback — сообщение Python об ошибке. Сначала прочитай его последнюю строку и найди номер строки своего файла. Повтори только тот маленький шаг, на котором возникла ошибка; после исправления снова запусти тот же проверочный случай. Если используешь ИИ, сохрани собственную попытку и попроси одну подсказку, а не готовое решение.