isinstance и Protocol — почему возникает TypeError

isinstance и Protocol — почему возникает TypeError

@python_quiz

Разберем этот квиз

Коротко: в Python typing.Protocol — инструмент статической (аннотируемой) структурной типизации. По умолчанию протоколы не предназначены для runtime-проверок с помощью isinstance/issubclass. Попытка выполнить isinstance(obj, Protocol) без специальной пометки приведёт к TypeError. Ниже — развернутое объяснение и практические примеры.

Условие (кратко)

Дан код:

python

Варианты ответа предлагали разные выводы (комбинации True/False или сообщение о невозможности выполнения). Разберём, что реально произойдёт и как получить ожидаемое поведение.

Почему возникает ошибка

protocol

Report Page