Задачи курса «Python для продвинутых: ООП, типизация и тестирование»
Выберите задачу и проверьте решение прямо на странице. Регистрация не нужна.
- Comprehension, enumerate и zip в Python: отчёт по студентам
Соберите отчёт по студентам с помощью comprehension, enumerate, zip и сортировки key. Решите задачу Python онлайн.
- Распаковка, args и kwargs в сигнатурах и вызовах — задача по Python
Практическая задача по теме «Распаковка, args и kwargs в сигнатурах и вызовах» с проверкой ответа онлайн.
- Класс, init, атрибуты экземпляра и методы — задача по Python
describe() при следующем коде? Проверьте ответ в задаче из бесплатного курса Python.
- Инкапсуляция и property в Python: исправьте класс температуры
Исправьте класс температуры: защитите инварианты через property и разберите инкапсуляцию в Python на работающем коде.
- Специальные методы: repr, str, eq, len — задача по Python
Практическая задача по теме «Специальные методы: repr, str, eq, len» с проверкой ответа онлайн.
- Python: Каталог товаров: dataclass, NamedTuple и field(defaultfactory=...)
Сравните dataclass и NamedTuple в каталоге товаров; примените field(defaultfactory) для изменяемых данных. Задача онлайн.
- Наследование, super() и переопределение методов — задача по Python
чтобы не дублировать логику родителя? Проверьте ответ в задаче из бесплатного курса Python.
- Protocol в Python: задача на структурные интерфейсы
Опишите структурный интерфейс через Protocol и используйте разные реализации уведомлений без общего базового класса.
- Первые тесты на pytest: нормальные сценарии, граничные случаи и исключения — задача по Python
Какой аргумент наиболее точно описывает практическую проблему одной большой тест-функции? Проверьте ответ в задаче из бесплатного курса Python.
- Регрессионный тест Python: воспроизведите ошибку в calculatetax
Воспроизведите ошибку в calculatetax при нулевой ставке, исправьте функцию и подтвердите результат регрессионным тестом.
- Python-пакет с моделями и Protocol: итоговая задача
Соберите ядро трекера задач как Python-пакет: модели, Protocol и сервис. Итоговая задача по архитектуре приложения.
- Python: Диагностика виртуального окружения
Прочитайте диагностический вывод команд Python и определите, корректно ли настроено виртуальное окружение. Задача с проверкой кода.
- Python: Валидатор pyproject.toml
Напишите валидатор pyproject.toml: проверьте обязательные секции и настройки проекта по тексту файла. Практическая задача на Python.
- Абсолютные импорты Python: задача с пакетом warehouse
Используйте абсолютные импорты в пакете warehouse из нескольких модулей. Разберите структуру пакета и проверьте решение онлайн.
- Python: Публичный фасад пакета reports: init.py и all
Настройте публичный API пакета reports через init.py и all. Практика импорта и экспорта имён в Python.
- Python: Диагностика циклического импорта по traceback
Определите циклический импорт по Python traceback и найдите модуль, вызвавший ошибку. Практическая задача с проверкой кода.
- Python: Класс Event с альтернативным конструктором и валидацией
Создайте класс Event с альтернативным конструктором через classmethod и валидацией данных. Задача по ООП Python.
- Python: Иерархия исключений для банковского счёта
Реализуйте иерархию собственных исключений и банковский счёт, который поднимает их в нужных случаях. Практика Python.
- Python: Маршрутизатор задач: Enum вместо строковых констант
Замените строковые статусы задач на Enum и сформируйте сводку по статусам и приоритетам. Практика Python с проверкой.
- Python: Сборщик уведомлений: замени жёсткую зависимость на инъекцию
Разделите сервис уведомлений на компоненты и внедрите зависимость вместо жёсткой привязки к классу. Практика композиции Python.
- Python: Система оценки контента: ABC с двумя конкретными подклассами
Создайте абстрактный класс ContentItem через ABC и abstractmethod, затем реализуйте два конкретных типа контента. Задача по Python.
- Python: Диспетчер отчётов: полиморфный вызов без isinstance
Реализуйте диспетчер отчётов через общий интерфейс объектов без проверок isinstance. Практическая задача на полиморфизм.
- Python: Рефакторинг процедурного трекера задач в классы
Перенесите процедурный трекер задач в классы, сохранив прежнее поведение. Задача на рефакторинг и ООП Python.
- Аннотации типов Python: исправьте класс OrderLine
Исправьте аннотации атрибутов и методов класса OrderLine так, чтобы код проходил проверку типов mypy. Задача по Python.
