Задачи с проверкой
Выберите задачу и проверьте решение прямо на странице. Регистрация не нужна.
- Python: Валидатор pyproject.toml
Напишите валидатор pyproject.toml: проверьте обязательные секции и настройки проекта по тексту файла. Практическая задача на Python.
Python для продвинутых: ООП, типизация и тестирование - Абсолютные импорты Python: задача с пакетом warehouse
Используйте абсолютные импорты в пакете warehouse из нескольких модулей. Разберите структуру пакета и проверьте решение онлайн.
Python для продвинутых: ООП, типизация и тестирование - Python: Публичный фасад пакета reports: init.py и all
Настройте публичный API пакета reports через init.py и all. Практика импорта и экспорта имён в Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Диагностика циклического импорта по traceback
Определите циклический импорт по Python traceback и найдите модуль, вызвавший ошибку. Практическая задача с проверкой кода.
Python для продвинутых: ООП, типизация и тестирование - Python: Класс Event с альтернативным конструктором и валидацией
Создайте класс Event с альтернативным конструктором через classmethod и валидацией данных. Задача по ООП Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Иерархия исключений для банковского счёта
Реализуйте иерархию собственных исключений и банковский счёт, который поднимает их в нужных случаях. Практика Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Маршрутизатор задач: Enum вместо строковых констант
Замените строковые статусы задач на Enum и сформируйте сводку по статусам и приоритетам. Практика Python с проверкой.
Python для продвинутых: ООП, типизация и тестирование - Python: Сборщик уведомлений: замени жёсткую зависимость на инъекцию
Разделите сервис уведомлений на компоненты и внедрите зависимость вместо жёсткой привязки к классу. Практика композиции Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Система оценки контента: ABC с двумя конкретными подклассами
Создайте абстрактный класс ContentItem через ABC и abstractmethod, затем реализуйте два конкретных типа контента. Задача по Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Диспетчер отчётов: полиморфный вызов без isinstance
Реализуйте диспетчер отчётов через общий интерфейс объектов без проверок isinstance. Практическая задача на полиморфизм.
Python для продвинутых: ООП, типизация и тестирование - Python: Рефакторинг процедурного трекера задач в классы
Перенесите процедурный трекер задач в классы, сохранив прежнее поведение. Задача на рефакторинг и ООП Python.
Python для продвинутых: ООП, типизация и тестирование - Аннотации типов Python: исправьте класс OrderLine
Исправьте аннотации атрибутов и методов класса OrderLine так, чтобы код проходил проверку типов mypy. Задача по Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Форматировщик записей лога с Literal, X | None и TypeAlias
Отформатируйте записи лога с помощью Literal, X | None и TypeAlias. Практика аннотаций типов в Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Обобщённая функция firstandlast с TypeVar и bound
Реализуйте firstandlast с TypeVar и bound, сохранив тип элементов последовательности в результате. Задача по типизации Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Классификатор строк диагностики по инструменту
Разберите смешанный вывод black, ruff и mypy: определите инструмент по строке диагностики и соберите сводку. Задача Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Параметризованные тесты для валидатора имени пользователя
Напишите параметризованные pytest-тесты для функции проверки имени пользователя. Практика @pytest.mark.parametrize.
Python для продвинутых: ООП, типизация и тестирование - Фикстуры pytest и scope: напишите тесты для очереди
Напишите pytest-тесты для очереди, используя фикстуры с разными областями видимости. Задача на fixture scope.
Python для продвинутых: ООП, типизация и тестирование - Python: Напиши тесты для функции сохранения отчёта с tmppath
Протестируйте функцию сохранения отчёта в файл через pytest tmppath, не затрагивая реальные файлы проекта.
Python для продвинутых: ООП, типизация и тестирование - Python: Напиши тесты для PricingService с stub-репозиторием
Проверьте PricingService с помощью stub-репозитория и pytest. Практическая задача на тестируемый дизайн Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Напиши тесты для генератора токенов с патчингом времени и случайности
Напишите детерминированные тесты генератора токенов, подменяя время и случайность через monkeypatch или unittest.mock.
Python для продвинутых: ООП, типизация и тестирование - Python: Организатор артефактов сборки
Организуйте артефакты сборки по каталогам с помощью pathlib и безопасной работы с путями. Практическая задача Python.
Python для продвинутых: ООП, типизация и тестирование - Чтение JSON и запись CSV в Python: задача на конвертер
Прочитайте товары из JSON, проверьте структуру данных и сохраните отчёт в CSV. Задача на файлы и валидацию в Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Реализуй TaskRepository и напиши тест с stub-репозиторием
Реализуйте TaskRepository с хранением в JSON и проверьте бизнес-функцию через stub-репозиторий. Практика Python.
Python для продвинутых: ООП, типизация и тестирование - Python: Настрой файловый логгер с Formatter и фильтрацией секретов
Настройте файловый логгер Python: Formatter, уровни сообщений и фильтрация секретов. Решите задачу с проверкой кода.
Python для продвинутых: ООП, типизация и тестирование
