🏠 Домашнее задание

⚡ Кратко: домашнее задание

Summary session 9 повторяет множества, хеширование, set-операции, frozenset и основы словарей.

set нужен для уникальности и операций над наборами.

frozenset полезен там, где нужен неизменяемый и хешируемый набор.

dict хранит пары ключ-значение и быстро ищет значение по ключу.

Ключи dict должны быть хешируемыми, поэтому list, set и dict не подходят.

Оператор in для словаря проверяет ключи.

Для сравнимого вывода set лучше сортировать.

Главная цель summary - обнаружить пробелы перед продолжением темы словарей.

Топ-3 ошибки: ожидать от set сохранения порядка; путать элемент множества и ключ словаря; считать, что update() создаёт дубликат ключа.

Подготовка окружения

  1. Создайте папку lesson_35.
  2. Каждую задачу оформите отдельным файлом task_1.py, task_2.py и так далее.
  3. Запускайте файлы из терминала VS Code командой python task_1.py.
  4. После совпадения с примером измените входные данные и проверьте, что решение не привязано к одному случаю.

Домашнее задание 1. Домашняя тренировка summary

В источнике summary session 9 не содержит отдельного LMS-ДЗ. Закрепите темы через три короткие задачи.

Данные: set, dict, frozenset

numbers = [1, 2, 2, 3, 4, 4, 5]
unique_even = {number for number in numbers if number % 2 == 0}
print("Чётные уникальные:", sorted(unique_even))

profile = {"name": "Alice", "age": 30}
profile.update({"age": 31, "city": "Berlin"})
print(profile)

key = frozenset(["read", "write"])
roles = {key: "editor"}
print(roles[frozenset(["write", "read"])])