Python: функции и идиомы
Прокачайте функции до уровня собеседований: гибкие сигнатуры с *args и **kwargs, замыкания и фабрики, декораторы, генераторы и ленивые конвейеры, comprehensions и sorted с key. Каждая задача самостоятельна.
Что тебя ждёт в этом пути
Что ты построишь
25 задач по темам, которые чаще всего спрашивают на собеседовании по Python: гибкие сигнатуры функций, замыкания и фабрики, декораторы, генераторы и ленивые конвейеры, comprehensions и sorted с key. Пять паков — от донатов марафона на *args до дайджеста продаж на sorted с ключом-кортежем. Первый пак бесплатный, дальше premium. Каждое решение прогоняется судьёй на скрытых входных данных, поэтому угадать ответ по одному примеру не получится.
Для кого
Для тех, кто уже пишет функции в Python и хочет закрыть конкретный пробел перед собеседованием — decorators, generators, closures звучат знакомо, но руками написать сходу не выходит. Уровень средний: без объяснения синтаксиса с нуля, сразу к применению.
Чему научишься
- Принимать переменное число аргументов через *args и **kwargs, включая позиционные-только и keyword-only параметры
- Строить замыкания с nonlocal — счётчики, фабрики скидок, генераторы номеров с зашитым состоянием
- Писать декораторы: счётчик вызовов, кэш последнего результата, охранник на пустой ввод, фабрику repeat_calls
- Собирать генераторы через yield для ленивой пагинации, нарастающего баланса и фильтрации по условию
- Строить list и dict comprehensions с отбором и извлечением поля в одну строку
- Сортировать sorted() с ключом-кортежем: несколько критериев и обработка ничьих
- Собирать конвейеры map → filter, где порядок этапов меняет результат
Задачи пути — 5 модулей, 25 задач
Каждый модуль — навык. Решаешь задачи по порядку, и к финалу из них собирается рабочий результат.
Готов начать этот путь?
Зарегистрируйся — откроем путь прямо на первой задаче. Без установки и настройки, всё в браузере.