19 вопросов
Практика
Как бы ты объяснил назначение и случаи применения `typing.Annotated` в Python, и можешь ли ты привести пример того, как фреймворки вроде FastAPI его используют?
Можешь объяснить, что такое type hints в Python, включая их назначение, как они реализуются в коде и какие инструменты их используют для статического анализа?
Какие основные компоненты и конструкции типов предоставляет модуль `typing` в Python?
Можешь объяснить, что такое dataclasses в Python и описать ключевые возможности и методы, которые автоматически генерирует декоратор `@dataclass`?
Какие ключевые различия между dataclasses, NamedTuples и обычными классами в Python, и когда ты должен использовать каждый подход?
Можешь объяснить назначение и синтаксис оператора присваивания с проверкой (`:=`) в Python и привести пример того, как его использовать для присваивания и вычисления переменной в одном выражении?
Можешь объяснить функцию структурного сопоставления (structural pattern matching), которая была введена в Python 3.10? Расскажи, как работает синтаксис `match`/`case`, и приведи пример её практического применения.
Как `typing.Protocol` обеспечивает структурную типизацию в Python, и в чём его ключевые отличия от номинальной типизации?
Как работает метод `__post_init__` в Python dataclasses и каковы его основные варианты использования?
Можешь объяснить, что такое function annotations в Python, и описать их основные варианты использования и возможности?
Можешь объяснить, что такое PEP 703 и как опциональная реализация GIL влияет на возможности многопоточности в Python и совместимость с C расширениями?
Можешь объяснить, что такое unit testing в Python, и описать основные фреймворки или инструменты для его реализации?
Можешь объяснить, что такое `pytest`, и описать ключевые особенности, которые сделали его самым популярным фреймворком для тестирования в Python?
Можешь объяснить, что такое pytest fixtures и как использовать декоратор `@pytest.fixture` для создания переиспользуемых компонентов инициализации и очистки в Python тестировании?
Как модуль `unittest.mock` облегчает модульное тестирование в Python, и какие основные инструменты он предоставляет для изоляции тестируемого кода?
Как ты бы объяснил параметризацию тестов в Python, и можешь ли ты привести пример того, как это реализовать с помощью pytest?
Как ты измеряешь покрытие кода в Python, и что это говорит о качестве кода?
Можешь объяснить методологию Test-Driven Development (TDD) и описать типичный цикл workflow, используемый при разработке на Python?
Можешь объяснить ключевые различия между фреймворками `unittest` и `pytest` в Python? Рассмотри их подход к организации тестов, механизмы setup/teardown, assertions и общую гибкость.