Python: функции и организация кода
Как писать и собирать функции: параметры и значения по умолчанию, декомпозиция на хелперы, выбор поведения по ключу, чистые функции против состояния и композиция. Каждая задача самостоятельна.
Что тебя ждёт в этом пути
Что ты построишь
30 решений на Python в 6 паках про сборку функций из частей: параметров, хелперов, замыканий и композиции. Пройдёшь путь от совершеннолетия по возрасту и цены со скидкой до калькулятора операций через словарь-диспетчер, make_counter с замыканием и конвейера шагов с остановкой на первом None. Пак «Основы функций» бесплатный, «Аргументы и значения по умолчанию», «Декомпозиция», «Таблицы диспетчеризации», «Чистые функции и состояние» и «Композиция и pipeline» премиум. Каждую задачу решаешь и запускаешь в браузере, судья проверяет её на скрытых входных данных.
Для кого
Для тех, кто уже пишет функции на Python, но собирает их интуитивно: длинные if-elif вместо словаря, копипаста вместо хелперов, побочные эффекты там, где нужен чистый возврат. Уровень пути easy по входному синтаксису, но требует разобраться в декомпозиции и композиции осознанно. Подойдёт после базового курса, до классов и ООП.
Что нужно знать до старта
- Знать переменные, условия, циклы, списки и словари Python
- Уметь объявить простую функцию, передать аргумент и вернуть результат
Чему научишься
- Задавать параметры по умолчанию и разворачивать *args и **kwargs без потери порядка
- Разбивать большую функцию на именованные хелперы с одной ответственностью каждый
- Заменять цепочку if-elif словарём-диспетчером с явным отказом на неизвестном ключе
- Отличать чистую функцию от функции с состоянием и осознанно выбирать между ними
- Собирать замыкания: счётчики и фабрики функций, которые помнят значение между вызовами
- Строить конвейер из нескольких функций и останавливать его по условию
- Соединять две функции в одну композицией, не трогая промежуточное состояние
Задачи пути — 6 модулей, 30 задач
Каждый модуль — навык. Решаешь задачи по порядку, и к финалу из них собирается рабочий результат.
Готов начать этот путь?
Зарегистрируйся — откроем путь прямо на первой задаче. Без установки и настройки, всё в браузере.