Python isinstance ()

A função isinstance () verifica se o objeto (primeiro argumento) é uma instância ou subclasse da classe classinfo (segundo argumento).

A sintaxe de isinstance()é:

 isinstance (objeto, informação de classe)

Parâmetros isinstance ()

isinstance() leva dois parâmetros:

  • objeto - objecta ser verificado
  • classinfo - classe, tipo ou tupla de classes e tipos

Valor de retorno de isinstance ()

isinstance() retorna:

  • True se o objeto é uma instância ou subclasse de uma classe ou qualquer elemento da tupla
  • False de outra forma

Se classinfo não for um tipo ou tupla de tipos, uma TypeErrorexceção é levantada.

Exemplo 1: Como funciona isinstance ()?

 class Foo: a = 5 fooInstance = Foo() print(isinstance(fooInstance, Foo)) print(isinstance(fooInstance, (list, tuple))) print(isinstance(fooInstance, (list, tuple, Foo)))

Resultado

 Verdadeiro Falso Verdadeiro

Exemplo 2: Trabalho de isinstance () com tipos nativos

 numbers = (1, 2, 3) result = isinstance(numbers, list) print(numbers,'instance of list?', result) result = isinstance(numbers, dict) print(numbers,'instance of dict?', result) result = isinstance(numbers, (dict, list)) print(numbers,'instance of dict or list?', result) number = 5 result = isinstance(number, list) print(number,'instance of list?', result) result = isinstance(number, int) print(number,'instance of int?', result)

Resultado

(1, 2, 3) instância da lista? Instância verdadeira (1, 2, 3) de dict? Instância falsa (1, 2, 3) de dict ou list? 5 instâncias verdadeiras da lista? Falso 5 instância de int? Verdade

Artigos interessantes...