isinstance() Verificação de tipo

Última atualização: 2026-09-22

isinstance() Verificação de tipo

isinstance(obj, classinfo) verifica se obj é uma instância de classinfo (ou de uma subclasse), e classinfo pode ser uma tupla.

CategoriaFunções internas
TipoFunção interna
Versão do Pythonall

📝 Sintaxe

isinstance(object, classinfo)

⚙️ Parâmetros

object ObrigatórioThe object to check.
classinfo ObrigatórioA type, or a tuple of types (union check).

Retorno:True if object is an instance of classinfo (or any type in it).

💥 Exceções

▶ Exemplo

Edite o código, clique em Executar e veja o resultado no painel de saída:

Saída:

True
True
False
Mais estudos de caso em breve — aguarde.

❓ Perguntas frequentes

QQual é a diferença entre isinstance(x, int) e type(x) == int?
Aisinstance considera a herança (uma instância de subclasse também retorna True); type(x) == int exige que o tipo seja exatamente igual. Em geral isinstance é mais flexível.
QO que isinstance(True, int) retorna?
ARetorna True, pois bool é uma subclasse de int; para distinguir booleano de inteiro, verifique adicionalmente se type(x) is bool.
QO segundo argumento pode ter vários tipos?
ASim, passe uma tupla: isinstance(x, (int, float)) é True se satisfizer qualquer um; se classinfo não for um tipo ou tupla de tipos, levanta TypeError.
Qisinstance pode verificar interfaces/tipos abstratos?
ASim, pode verificar classes abstratas, como isinstance(x, Iterable) ou isinstance(x, collections.abc.Sequence) — mais robusto do que verificar um tipo concreto.
Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%