12 / 15
Аннотации типов (type hints) в Python: Optional, Union, обобщённые `list[int]`/`dict[str, T]`, Protocol против ABC
Type hints — статические аннотации типов из модуля typing. Они не проверяются интерпретатором, но используются mypy/pyright/IDE. С Python 3.9+ можно писать list[int] без импорта, с 3.10+ — int | None вместо Optional[int]. Protocol задаёт структурный (duck) типинг — «всё, что реализует метод X», аналог TypeScript-интерфейсов. ABC задаёт номинальную иерархию через наследование.