Карта курса → Модуль 2 → Урок 2.3

Вложенные структуры — мир из чанков

Строим сложные данные: список словарей и словарь списков.

Вложенные структуры — мир из чанков

🎣 Hook

Один чанк Minecraft содержит кучу блоков. Один мир — кучу чанков. Сложные системы состоят из вложенных систем.

🧠 Concept

Термины: list, dictionary, loop, function — пишем по-английски, объясняем по-русски.

Вложенные структуры — это когда внутри списка лежат словари, а внутри словаря — списки.

Пример:
чанк = {
"коорд": [0, 0],
"ресурсы": ["уголь", "железо"],
"мобы": [{"тип": "зомби", "hp": 20}]
}

Такие структуры удобно передавать как JSON и хранить состояние мира.

🧩 Квиз +10 XP
Что такое JSON в контексте урока?
A Только формат картинок
B Структурированный текст для передачи объектов
C Язык программирования
D Система хранения паролей

🔧 Практика

Задание 1: допиши ключ для списка ресурсов и индекс для первого ресурса.

chunk = {"resources": ["уголь", "железо"]}
print(chunk["resources"][0])

Заполни пропуски в коде в своей тетради/редакторе. Ключевые ответы: ресурсы/0.

Задание 2: укажи ключ поля hp у первого моба.

chunk = {"mobs": [{"тип": "зомби", "hp": 20}]}
print(chunk["mobs"][0]["hp"])

Проверь себя: hp.

🧩 Квиз +10 XP
Как обратиться к первому элементу списка внутри словаря d["items"]?
A d.items.1
B d[items][1]
C d["items"][0]
D d(0)

🏗️ Сборка: мини-проект

Опиши 3 чанка в списке: у каждого координаты, уровень освещения и список мобов. Выведи все координаты циклом.

👹 Мини-босс +120 XP

Комбинируем текущую тему с предыдущими навыками.

A Сделать без структуры, потом чинить
B Сначала план, затем реализация и проверка
C Копировать решение без понимания
D Пропустить тесты ради скорости

💭 Reflection

Теперь ты читаешь и строишь вложенные данные без паники. Это критично для разработки игр, веба и аналитики.